如果主队列中的任何任务准备好开始,有没有办法让Celery重新检查?远程命令add_consumer()
能完成这项工作吗?
原因:我正在运行多个并发任务,这些任务会产生多个子进程。完成任务后,子进程有时需要几秒钟才能完成,因此子进程会最大限度地消除并发限制,因此永远不会启动队列中的新任务。并且因为Celery在子进程完成时不再检查,所以队列停止而没有活动任务。因此,我想添加一个周期性任务,告诉Celery重新检查队列并开始下一个任务。我如何告诉芹菜?
答案 0 :(得分:0)
来自the docs:
add_consumer控制命令将告诉一个或多个工作人员开始从队列中消费。这个操作是幂等的。
是的,add_consumer
可以满足您的需求。您还可以将其与periodic task结合使用,然后重新检查队列并启动下一个任务。经常(取决于你的需要)