Celery:限制任务的队列

时间:2017-09-27 11:04:53

标签: python celery amqp

我有多个队列,我们​​说这些是Q1Q2

我也有一些任务,其中一项是T1

如何配置Celery,以便工作人员只从T1获取Q1,从不接受T1中的Q2

2 个答案:

答案 0 :(得分:2)

您可以使用芹菜apps来实现这一目标。将不同类型的任务注册到不同的应用程序,并仅在这些应用程序上运行工作程序(例如,参见celery worker命令的-A myapp设置)。

如果您沿着更简单的路线使用different queues,您也可能会取得成功。因此,如果您设法仅将T1发送到名为queue1的队列,将T2发送到queue2,则可以在celery worker上使用选项-Q queue1,因此它仅从queue1中获取任务。

答案 1 :(得分:0)

当你启动你的工作人员时,你可以为他指定一个队列

celery -A proj worker -Q queue_name