celery 缺少后端结果

mwyxok5s  于 2021-06-10  发布在  Redis
关注(0)|答案(0)|浏览(264)

我尝试使用celery 为我的项目的一些i/o任务,但我到达了一个死胡同,我真的很感谢你的帮助,如果可能的话。
所以我要实现的基本目标是首先在多台远程机器上运行一组相同的任务(例如,在它们上复制一些文件),然后运行另一组不同任务类型的任务(例如,在机器上安装python模块)。
我尝试过这样的方法:

final_job = chain( group(copy_files_job) | HandleResults().s(), group(install_module_job) | HandleResults().s())
``` `result = final_job.delay()` 我想要实现的是,还可以将每组任务的结果报告回web界面。我不确定这是否是正确的方法来做我想要的celery 。
但是运行这个会返回一个 `NotImplementedError: Starting chords requires a result backend to be configured.` 但事实并非如此,因为我将redis同时用作代理和结果后端,如果不使用handle results任务添加第二组任务,那么效果会很好( `group(install_module_job) | HandleResults().s())` ).
所以很明显,这个错误是不正确的。我猜celery 试图告诉我,我配置了最后一个工作的错误的方式,但我真的不知道我还能写什么,我试图实现。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题