Как конфигурировать количество процессов Workers в Celery

Python Middle Без компании
Как конфигурировать количество процессов Workers в Celery
Ответы
Для конфигурации количества воркеров в Celery есть несколько способов: - При запуске через команду: ``` celery -A proj worker --concurrency=4 ``` - В настройках Celery (settings.py): ``` CELERY_WORKER_CONCURRENCY = 4 ``` - Через переменную окружения: ``` export CELERY_WORKER_CONCURRENCY=4 ``` Оптимальное количество воркеров зависит от: - Количества CPU ядер (обычно 2-4x от числа ядер) - Типа задач (CPU-bound или I/O-bound) - Доступной памяти Для I/O-bound задач можно увеличивать concurrency больше, чем ядер CPU. Для CPU-bound - не больше количества ядер. Пример с пулом процессов: ``` from celery import Celery app = Celery('tasks') app.conf.worker_concurrency = 8 ```