强制Celery在队列中运行下一个任务?

时间:2014-07-02 13:36:31

标签: python django celery

如果主队列中的任何任务准备好开始,有没有办法让Celery重新检查?远程命令add_consumer()能完成这项工作吗?

原因:我正在运行多个并发任务,这些任务会产生多个子进程。完成任务后,子进程有时需要几秒钟才能完成,因此子进程会最大限度地消除并发限制,因此永远不会启动队列中的新任务。并且因为Celery在子进程完成时不再检查,所以队列停止而没有活动任务。因此,我想添加一个周期性任务,告诉Celery重新检查队列并开始下一个任务。我如何告诉芹菜?

1 个答案:

答案 0 :(得分:0)

来自the docs

  

add_consumer控制命令将告诉一个或多个工作人员开始从队列中消费。这个操作是幂等的。

是的,add_consumer可以满足您的需求。您还可以将其与periodic task结合使用,然后重新检查队列并启动下一个任务。经常(取决于你的需要)

相关问题