芹菜:限制任务队列
Celery: restrict queues for a task
我有多个队列,假设这些是 Q1
和 Q2
。
我还有一些任务,其中之一是T1
。
如何配置 Celery 以便工作人员仅从 Q1
中获取 T1
,而从不接受来自 Q2
中的 T1
?
你可以用芹菜来实现这个apps。将不同类型的任务注册到不同的应用程序和仅在这些应用程序上的 运行 workers(例如,请参阅 celery worker 命令的 -A myapp
设置)。
或者,如果您使用更简单的方法 different queues,您也可能会成功。因此,如果您设法仅将 T1 发送到名为 queue1 的队列,将 T2 发送到 queue2,则可以在 celery worker 上使用选项 -Q queue1
,因此它只从 queue1 中获取任务。
当你启动你的工人时,你可以为他指定一个队列
celery -A proj worker -Q queue_name
我有多个队列,假设这些是 Q1
和 Q2
。
我还有一些任务,其中之一是T1
。
如何配置 Celery 以便工作人员仅从 Q1
中获取 T1
,而从不接受来自 Q2
中的 T1
?
你可以用芹菜来实现这个apps。将不同类型的任务注册到不同的应用程序和仅在这些应用程序上的 运行 workers(例如,请参阅 celery worker 命令的 -A myapp
设置)。
或者,如果您使用更简单的方法 different queues,您也可能会成功。因此,如果您设法仅将 T1 发送到名为 queue1 的队列,将 T2 发送到 queue2,则可以在 celery worker 上使用选项 -Q queue1
,因此它只从 queue1 中获取任务。
当你启动你的工人时,你可以为他指定一个队列
celery -A proj worker -Q queue_name