gpt4 book ai didi

python - 如何使用 AsyncResult 重试已撤销的 Celery 任务

转载 作者:行者123 更新时间:2023-12-01 07:39:43 32 4
gpt4 key购买 nike

我想使用 AsyncResult 对象重试之前撤销的任务,但收到一条错误消息,指出一旦运行该任务,该任务就会被丢弃

worker_1 | [2019-06-27 16:04:23,094: INFO/MainProcess] Discarding revoked task: ...

根据docs已撤销任务的列表由工作线程存储在内存中,并且在工作线程重新启动之前不会被清除。

是否有其他方法可以取消正在运行的任务而不是撤销它,或者我可以以某种方式从已撤销任务列表中删除该任务吗?

最佳答案

将被撤销的任务从“死者”那里带回来是没有意义的。

我建议你做的是:

  1. 使用与已撤销任务相同的参数创建一个新任务。

  2. 使用 update_state()任务上,并指定可用于关联两个不同任务(已撤销的任务和新任务)的元数据。类似 tsk.update_state(meta={"job-id": "babadeda123", "client-id": "skynet", "previous-task-id": "64fb925e-86cb-4d29-b4e5-33f41f8416cc"})其中 64fb925e-86cb-4d29-b4e5-33f41f8416cc 是已撤销任务的 ID。

关于python - 如何使用 AsyncResult 重试已撤销的 Celery 任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56792984/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com