我在Fedora盒子上运行Celeryd / RabbitMQ,与
MySQL通信
数据库在一个单独的盒子上我注意到,在极少数情况下,如果
甚至连接到MysqL数据库都有丝毫问题
(即使是几秒钟),芹菜也会因错误而崩溃:
数据库在一个单独的盒子上我注意到,在极少数情况下,如果
甚至连接到MysqL数据库都有丝毫问题
(即使是几秒钟),芹菜也会因错误而崩溃:
OperationalError: (2003,"Can't connect to MysqL server on 'mydatabasedomain' (111)")
即使数据库再次可用,也无法重新连接.
目前,我被迫手动重启celeryd服务
芹菜再次运行.是否有更优雅和自动的方式
从这些类型的事件中恢复?是否有芹菜的特征
只是安静地等待,记录OperationalError,然后重新连接
完全退出?
解决方法
我不知道有什么方法可以通过简单地使用配置标志来解决这个问题,但您可以考虑使用主管来运行您的工作人员(s.
http://supervisord.org).
这甚至在芹菜文档(http://celery.readthedocs.org/en/latest/tutorials/daemonizing.html#supervisord)中提到,包括一些示例配置文件的链接.