Эффективно обрабатывать 10 000 HTTP-запросов на Python: AsyncIO, многопоточность или что-то еще? [закрыто]Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Эффективно обрабатывать 10 000 HTTP-запросов на Python: AsyncIO, многопоточность или что-то еще? [закрыто]

Сообщение Anonymous »

Я работаю над сценарием Python, которому необходимо обновить 10 000 записей, отправляя отдельные HTTP-запросы к серверному API. Каждую запись необходимо обновлять отдельно, и, к сожалению, у меня нет возможности группировать эти запросы на серверной стороне.
Что я пробовал:
  • Код: Выделить всё

    requests
    + потоковая обработка: использовала потоковую обработку Python для параллельной отправки запросов, но возникли проблемы с загрузкой ЦП и памятью.
  • AsyncIO с aiohttp: пробовала использование asyncio с aiohttp для управления асинхронными запросами. Хотя производительность улучшилась, я столкнулся с проблемами регулирования, ограничения скорости и обработки ошибок среди 10 000 запросов.
Вопросы:

Вопросы:
  • Какая библиотека или подход Python лучше всего подойдет для эффективной обработки тысяч HTTP-запросов с минимальными накладными расходами?
  • Это asyncio + aiohttp в правильном направлении, или в этом случае лучше подойдет многопроцессорный подход или какая-либо другая комбинация?
  • Как я могу обрабатывать повторные неудачные запросы, не перегружая сервер или клиентские ресурсы?
  • Существуют ли какие-либо рекомендации по управлению таким большим количеством одновременных HTTP-запросов в Python без снижения производительности?
Дополнительная информация:
  • Backend API имеет ограничение скорости, поэтому мне нужно убедиться, что мой клиент соблюдает это, при этом обрабатывая обновления так же быстро, как и возможно.
  • Я также рассматривал возможность использования таких библиотек, как httpx или grequests, но был бы признателен за совет, в каком направлении двигаться.
Любая информация или рекомендации по масштабированию таких крупных операций HTTP будут полезны!

Подробнее здесь: https://stackoverflow.com/questions/789 ... ng-or-some
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Наименьшее общее кратное натуральных чисел до предела, скажем, 10 000 000.
    Anonymous » » в форуме Python
    0 Ответы
    36 Просмотры
    Последнее сообщение Anonymous
  • System.nanoTime()/1 000 000 полностью отличается от System.currentTimeMillis().
    Anonymous » » в форуме JAVA
    0 Ответы
    28 Просмотры
    Последнее сообщение Anonymous
  • Как сгенерировать совокупную сумму из 300 000 000 случайных единиц и -1
    Anonymous » » в форуме Python
    0 Ответы
    27 Просмотры
    Последнее сообщение Anonymous
  • C++ — Почему переполнение int все еще происходит после модификации 1'000'000'007?
    Anonymous » » в форуме C++
    0 Ответы
    19 Просмотры
    Последнее сообщение Anonymous
  • Эффективное создание больших пакетов PDF-файлов (более 200 000) в .NET: многопоточность
    Anonymous » » в форуме C#
    0 Ответы
    17 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»