我想让Celery工作一段时间。当我同步测试时,我的所有crontabs都能正常工作
sudo celery -A testdjango worker --loglevel=DEBUG --beat
但是当我做的时候
celery multi start -A testdjango w1 -l info
我的crontabs都没有工作。我不知道为什么
注意:我尝试了其他计划间隔以及time delta
同样的事情也发生了。
所以我很确定这不是一个crontab的东西,但不知何故与我开始芹菜多种方式有关。
此外,工作人员开启时很好,因为我可以在Celery Flower中看到它,但没有任务被执行。
答案 0 :(得分:4)
或者不是在工作进程中运行Beat(不建议使用3.1.18的文档),您可以在后台专门运行它
celery beat -A testdjango --pidfile=/blah/beat.pid --detach
请务必将pid文件保存在某处,以便稍后也可以终止该过程。
答案 1 :(得分:3)
所以,答案非常简单
由于周期性任务需要Beat,只需在命令中添加--beat即可。
类似这样的事情
celery multi start -A testdjango w1 --beat -l info