芹菜节拍有时会停止工作

我在Django项目中使用了RabbitMQ的最新稳定Celery(4).

RabbitMQ在本地网络内的单独服务器上运行.而Beat定期停止只是将任务发送给工作人员而没有任何错误,只有重新启动它才能解决问题.

worker中没有异常(已在日志中检查&我也正在使用Sentry捕获异常).它只是停止发送任务.

服务配置:

[Unit]
Description=*** Celery Beat
After=network.target

[Service]
User=***
Group=***
WorkingDirectory=/opt/***/web/
Environment="PATH=/opt/***/bin"
ExecStart=/opt/***/bin/celery -A *** beat --max-interval 30

[Install]
WantedBy=multi-user.target

有可能解决这个问题吗?还是有什么好的选择? (Cron似乎不是最佳解决方案).

解决方法:

您的描述听起来很像这个打开的错误:https://github.com/celery/celery/issues/3409

那里有很多细节,但是高级错误描述是,如果与RabbitMQ的连接丢失,则无法重新建立连接.

不幸的是,我看不到有人可以解决这个问题.

您可以使用以下命令从调试开始:

ExecStart=/opt/***/bin/celery -A *** beat --loglevel DEBUG --max-interval 30
上一篇:python-Celery REST API


下一篇:python-使用Celery在多个队列中公平分配任务