我在我的Django供电网站中使用Celery
和Celerybeat
。服务器操作系统是Ubuntu 16.04。通过使用芹菜,每10分钟由芹菜工人完成工作。有时,工人在没有任何有用的日志消息或错误的情况下关闭。因此,我想找到一种方法,以检测芹菜工人(不击败)状态(开/关),如果停止,请自动重新启动。我怎样才能做到这一点?谢谢
在生产中,您应该使用celery,beat,您的应用程序服务器等。作为守护程序[1]使用Supersor/Upstart/upstart/Systemd/.../....有一个部分关于芹菜文档中的关于这一点。[2]
我最喜欢的工具是主管[3]。这是芹菜的主管示例配置:https://github.com/celery/celery/tree/master/master/extra/supervisord,https://github.com/illagrenan/illagrenan/ubuntu-supervisor-configuration是关于安装监督的教程在ubuntu。
(...)主管以其子流程开始流程,可以是 配置为在崩溃时自动重新启动它们。(...)
来源:http://supervisord.org/introduction.html#introduction
- [1] https://en.wikipedia.org/wiki/daemon_(computing)
- [2] http://docs.celeryproject.org/en/latest/userguide/daemonizing.html
- [3] http://supervisord.org/