Как стать автором
Обновить

Комментарии 11

asyncio не даст настоящей параллельности,

Для ожидания ответа параллельность не нужна

API — внешняя, я всё равно просто жду ответ.

Вердикт: не подходит.

Чушь полная: asyncio был придуман специально для ожидания ответов

Это уже ближе — multiprocessing создаёт настоящие процессы.

Идеально для I/O-задач, которые не грузят CPU.

Чушь полная: создавать дорогостоящие процессы, которые ничего не делают — максимально бессмысленная трата ресурсов, поэтому вместо них придумали asyncio

интересно.., спасибо за фидбек, поизучаю глубже и может сделаю апдейт

Я немного подразобрался в тех местах на которые вы оставили комент и вполне согласен с критикой)


Основная вся причина использования селери заключалась в том что я не писал все с 0, а делал рефакторинг кода и большая часть его была синхронной что на асинк было бы долго переписать и дороже чем выделеный мне бюджет (фриланс <3)

Это отражение того, насколько реально разработчики понимают асинхронное программирование в 2025.

До сих пор - почти никак.

Хочешь — могу нарисовать схемку (как идёт запрос → очередь → воркер → API → ответ) или таблицу сравнения режимов исполнения. Нужно? - статейку дипсиком писали?

😅

Celery отвратительно написан. Я не знаю как называется дизайн, но его невозможно читать, и из-за обилия рефлексии по нему нельзя ходить статическими анализаторами. Мне как-то нужно было понять почему с отключенным префетчем, воркеры продолжают выгребать лишнее из редиса - я не осилил сырцы. Вывод: перспективы развития и долгосрочной поддержки сомнительны.

сяпки, а че используешь как альтернативу? я тоже планирую сделать аналитическую систему над селери, какие проблемы с этим подскажи плиз буду благодарен

В целом, изначальную проблему решило агрессивное использование expire везде где можно. Воркеры, которые хапали лишнего, скоро обнаруживали, что лишнее давно протухло, и не застаивались.
А по итогу команда решила перекатиться на го, и селери отпал вместе с питоном.

Вам нужен asyncio.gather()
но точно не multiprocessing

Странно что с asyncio у автора не получилось, видимо call_api вызывался в цикле с await, иначе как объяснить такой результат?

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации