FitTech
@FitTech

Как сделать большое количество запросов?

В базе есть 1500 записей. Нужно работать с API используя данные записи. То есть к API идет задача получить данные между двумя записями 1 и 2, следующий запрос 1 и 3, 1 и 4, 1 и 1500, 2 и 1, 2 и 2 и тд, пока не будет 1500 и 1500.
Получается что у меня будет 2 250 000 GET запросов.
В API есть ограничение на 15 000 запросов в сутки да и долго это ждать пока обрабатывается такое количество запросов по одному.
Можно ли как-то отправить за одни запрос больше одного условия или как это всё можно оптимизировать?
  • Вопрос задан
  • 392 просмотра
Решения вопроса 2
copist
@copist
Empower people to give
Мне кажется, 2 250 000 HTTP запросов - это очень нехорошая архитектура. Мало того что сервер опухнет, так и клиент не дождётся. Один запрос предположим 3ms (очень оптимистично, прям идеально), тогда всё вместе будет 6750s или 112 минут. Два часа непрерывной долбёжки по API без таймаутов.

Предлагаю перенести логику либо в клиентское приложение (кто хочет сделать 2М запросов) либо в серверное (которое должно вернуть 2М запросов).

Либо пусть клиент получает сразу 1500 записей целиком или порциями и самостоятельно анализирует.
Либо пусть сервер подготавливает данные в нужном виде.

Если считаете, что не барское это дело серверу делать бизнес-аналитику, то разработайте промежуточный микросервис, который получит 1500 записей из исходного сервиса и подготовит выгрузку в нужном формате для клиента. Три звена.
Ответ написан
@entermix
Используйте сервер очередей типа Gearman, или RabbitMQ, чтобы параллельно выполнять множество операций
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы