В настоящее время на Bitfinex существует ограничение API в 60 запросов в минуту .
Вопрос в том, связано ли это ограничение с:
Если да, могу ли я иметь больше IP-адресов, связанных с одной учетной записью, каждая из которых имеет лимит 60 запросов в минуту?
Если да, могу ли я иметь больше учетных записей с тем же IP-адресом?
Если да, могу ли я иметь больше ключей для одной учетной записи, каждый из которых имеет отдельный лимит запросов?
Я написал им по этому поводу:
Лимит измеряется для каждого IP-адреса и для каждой учетной записи . Таким образом, для одного аккаунта (независимо от количества пар ключ/секрет) через наш API можно сделать 60 запросов в минуту. Когда вы используете несколько подключений (IP-адресов), общая сумма всех запросов для рассматриваемой учетной записи будет использоваться для определения того, не превышаете ли вы ограничение в 60 минут в минуту.
Мы надеемся, что этот ответ в достаточной мере ответил на ваши вопросы.
Мой вывод об ограничении скорости Bitfinex таков: 1 секунда делится на миллисекунды. 60 запросов должны охватывать всю секунду.
Например, если у вас есть цикл foreach, вы получите ошибку ограничения скорости менее чем за 15 запросов, потому что вы запрашиваете слишком быстро. Поэтому добавьте usleep (микросекундный сон в PHP), чтобы охватить ваши запросы на всю секунду и/или иметь несколько IP-адресов, назначенных вашему VPS или выделенному ящику, и используйте эту опцию curl.
<?php
$ips = array('1.1.1.1','1.1.1.2','1.1.1.3');
curl_setopt($ch, CURLOPT_INTERFACE, $ips[array_rand($ips)]);
Я пытался прокомментировать другой ответ, но моя репутация недостаточно высока. Я хотел указать, что предположение Ника об использовании счетчика имеет смысл, но не отвечает на вопрос, который, если предположить, что его предположение верно, оставляет это без ответа: когда счетчик сбрасывается?
Я бы реализовал это таким образом и (на всякий случай) предположил, что они сделали это так: по каждому запросу, если количество запросов, соответствующих вашей учетной записи или вашему IP (или обоим) за последние 60 секунд, превышает 60 , то запрос отклоняется. Это означает, что на один из «60 запросов одновременно в течение первой секунды второй минуты» будет дан ответ, а остальные не будут выполнены. Счетчика не будет, вместо этого будет запись всех запросов (IP, учетная запись, отметка времени), которая очищается от записей старше минуты так часто, как это необходимо для поддержания работоспособности сервера.
блестящий
Ник Оделл
блестящий
Константин