我有一个celery
应用程序正在消耗大量具有gevent
并发性的队列。
对于每个队列,我需要有一些保证数量的工作者,但每个队列的数量是不同的。例如:
由于队列总量很大,我想避免为每个队列启动专用celeryd
。
工作人员做了很多IO,我使用-P gevent
所以不关心有多少子工作人员celeryd
开始。
是否有办法配置单个celeryd
实例以将特定数量的工作人员分配到不同的队列?
答案 0 :(得分:0)
Celery multi
允许彼此独立配置工作人员。
例如
celery multi start node1 node2 -c:1 5 -Q:1 queue1 -c:2 10 -Q:2 queue2
启动2个工作者:第一个node1
消耗来自queue1
的并发5,第二个node2
消耗来自queue2
并发10。
查看multi.py
docstring