如何检测故障和自动重 启芹菜工人

问题描述 投票:0回答:1

我在django动力网站上使用CeleryCelerybeat。服务器操作系统是Ubuntu 16.04。通过使用celerybeat,每10分钟由芹菜工人完成一项工作。有时工作人员会关闭而没有任何有用的日志消息或错误。所以,我想找到一种方法来检测芹菜工人(不是Beat)的状态(On / Off),如果它已经停止,则自动重启。我怎样才能做到这一点?谢谢

linux cron celery django-celery celerybeat
1个回答
1
投票

在生产中,您应该使用Supervisor / Upstart / Systemd / ... / ....运行Celery,Beat,您的APP服务器等作为守护进程[1]。在Celery文档中有关于此的部分。 [2]

我最喜欢的工具是Supervisord [3]。以下是Celery的Supervisord示例配置:https://github.com/celery/celery/tree/master/extra/supervisord,这里https://github.com/illagrenan/ubuntu-supervisor-configuration是关于在Ubuntu上安装Supervisord的教程。

(...)Supervisord将进程作为其子进程启动,并且可以配置为在崩溃时自动重新启动它们。 (......)

资料来源:http://supervisord.org/introduction.html#introduction

© www.soinside.com 2019 - 2024. All rights reserved.