等待芹菜任务完成而不结果后端



而无需后端,我该如何等待芹菜任务完成?当未使用结果后端时,.collect().get()失败。我不需要任务的结果,只需等待完成即可。

>>> add.delay(1, 2).get()
Traceback (most recent call last):
  File "<console>", line 1, in <module>
  File "/usr/local/lib/python2.7/site-packages/celery/result.py", line 169, in get
    no_ack=no_ack,
  File "/usr/local/lib/python2.7/site-packages/celery/backends/base.py", line 616, in _is_disabled
    'No result backend configured.  '
NotImplementedError: No result backend configured.  Please see the documentation for more information.

基本上,任务需要与客户交流。

结果后端是芹菜传达任务状态的机制。如果禁用了它,则必须实施自己的通信机制。

您可以在商店中设置标志(诸如redis之类的轻量级是不错的),或者任务可以写入共享的安装座,也可以实现某种任务和客户端可以与之交谈的轻型Web服务。

但是,所有这些几乎都复制了后端的结果(尤其是第一个建议)。

相关内容

  • 没有找到相关文章

最新更新