芹菜任务应排在工人迷路的排队

时间:2017-11-09 13:30:29

标签: django task celery worker

我正在使用django-celery 3.2和芹菜3.1.25。 我添加了以下设置 -

CELERY_TASK_ACKS_LATE = True
task_reject_on_worker_lost = True

如果我使用芹菜4.x与django-celery 3.2,应用程序会导致以下错误并无法加载

  

ImportError:没有名为vine.five的模块

重现的步骤

触发某些任务,并从日志中获取其pid。我使用kill命令随机杀死一名工人(pid)。

预期行为

任务应该返回队列并由同一个或其他工作人员接收。

实际行为

任务迷失了。

1 个答案:

答案 0 :(得分:0)

您不能将django-celery用于较新版本的芹菜。

  

以前的Celery版本需要一个单独的库来处理Django,但是从3.1开始就不再这样了。 Django现在支持开箱即用,因此本文档仅包含集成Celery和Django的基本方法。

如你所提到的那样使用celery 4.x时,你可以在这里阅读(http://docs.celeryproject.org/en/latest/django/first-steps-with-django.html)关于如何在Django中使用芹菜。