В проекте (на Django) используется Celery для генерации отчетов, отправки сообщений, периодические таски и т.д. На периодические таски прописаны свои task_routes, на shared/task свои. Однако на production мы столкнулись с проблемой, что вочередь занимает большое кол-во мелких задач, из-за которых с большой задержкой выполняются другие.
Как лучше всего организовать очередь, настроить Celery/Redis или что ещё можно сделать чтобы таски выполнялись с меньшими задержками?
Celery worker запущены с concurrency 4, auto_scale 8,32
Вам нужно под приоритетные задачи выделить отдельную очередь(очереди), а все остальное обрабатывать отдельно. Таким образом мелкие не будут блокировать важные