我正在使用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)。
预期行为
任务应该返回队列并由同一个或其他工作人员接收。
实际行为
任务迷失了。
答案 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中使用芹菜。