芹菜工人在强制停止后不会重新启动



从我所读到的内容来看,芹菜工人似乎停止了,它应该能够在重新开始时从队列中消耗。

为了测试这一点,我构建了3个虚拟机,每台机器都有2个芹菜工人。我正在使用一个芹菜守护程序。一台机器具有客户端脚本,另一台机器充当代理,尽管它们都在运行rabbitmq。

当我启动客户端脚本时,我的所有工作人员都在获得任务(从我能看到的日志中)。为了测试失败后会发生什么,我发布

service celeryd stop

我的一台机器。一分钟后,我发布

service celeryd start

到我一分钟前停下来的机器。然而,在发出此命令时,我的客户端脚本会冻结并暂停,并且我在上述机器上的工作人员再也不会收到任务。

知道发生了什么事吗?我猜有一种可能性是,芹菜工人在被关闭前完成的最后一项任务不知何故受到了干扰?

仅供参考:一旦我在客户端脚本中收到结果,我就会删除临时队列,但我认为这不会影响上述问题。

是的,你说得对。当启动关闭时,工作程序将在实际终止之前完成所有当前正在执行的任务[参考[celer文档]。

您最好查看相应工作人员的日志,以确保这确实是根本问题。

顺便说一下,你可以用花来监测芹菜。

最新更新