当内的任务失败时,会自动将Celery链移动到死信队列中



我将Celery与RabbitMQ一起使用,我有一个包含4个任务和一个组的链。该小组处于链的顶端,其中有大约1千项任务

我有死信队列设置,它可以像预期的那样处理单个任务。

每当一个任务在组中失败时,它就会进入死信队列,但链的其余部分会丢失。

链:

  1. 组(a、b、c、d、e(
  2. 任务x
  3. 任务y
  4. 任务w
  5. 任务z

我希望组中的所有任务都并行运行,如果发生任何事情,请转到死信队列,并将链任务一起移动(这可能是在组中所有任务运行之后(。有办法做到这一点吗?如果没有,实现具有组的可恢复链的替代方法是什么?

链本身正在从组中寻找回调,如果组失败,则其余任务将失败,并被"丢失";

链的定义:链基元允许我们链接在一起签名,使一个在另一个之后被调用,基本上形成一连串的回电。

如果我理解正确,您可以在接下来的任务中通过定义异常来处理此回调。

作为类似问题的参考:(即使主要任务失败,也要运行和弦回调(

来源:https://docs.celeryproject.org/en/stable/userguide/canvas.html#chains

(我本来会评论的,但我没有足够的声誉,希望这有帮助!(

相关内容

  • 没有找到相关文章

最新更新