【问题标题】:Celery beat sometimes stops working芹菜节拍有时会停止工作
【发布时间】:2017-04-14 21:33:49
【问题描述】:

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

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 似乎不是最佳解决方案)。

【问题讨论】:

  • 如果你不能解决问题,也许你应该尝试使用 strace 或其他东西,芹菜节拍可能会被 oom 杀死。系统监视器有什么异常吗?内存使用情况?

标签: python django celery


【解决方案1】:

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

那里有很多细节,但高级错误描述是,如果与 RabbitMQ 的连接丢失,它将无法重新获得连接。

很遗憾,我看不到有人确实解决了这个问题。

您可以使用以下方法开始调试:

ExecStart=/opt/***/bin/celery -A *** beat --loglevel DEBUG --max-interval 30

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-06-23
    • 2023-03-02
    • 2021-10-24
    • 2015-05-11
    • 2018-09-08
    • 2020-01-23
    • 2015-05-13
    • 2012-03-27
    相关资源
    最近更新 更多