芹菜不摘芹菜总是急不可耐的

2024-04-19 10:27:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在运行Django 1.8+芹菜4.0.2 芹菜配置良好,可以在redis后端本地运行我的Django任务。 但是当我尝试使用CELERY_ALWAYS_EAGER = True设置时, 此设置无效。这与其他设置不同,例如CELERY_TIMEZONE

具体来说,在pdb中,我看到app.conf.task_always_eagerFalse

lib/python2.7/site-packages/celery/app/task.py(520)apply_async() So somehow CELERY_ALWAYS_EAGER is not picked up and has no effect on app.conf.task_always_eager

来自pdb的更多信息:

> app.conf.get('CELERY_ALWAYS_EAGER')
> True
> app.conf.task_always_eager
> False

是什么原因造成的?我知道芹菜4.x正在从旧的设置名称过渡到新的设置名称,但他们仍然承诺旧的设置名称仍然会被使用。


Tags: django名称redisfalsetrueapptaskconf
2条回答

CELERY_ALWAYS_EAGER已在版本4.0+中重命名为CELERY_TASK_ALWAYS_EAGER

更准确地说,为了直接配置芹菜应用程序对象,所有的caps设置都被弃用,并且有几个已经被命名为使用task_worker_作为前缀。因为“所有大写字母”设置仍然具有向后兼容性,所以这也间接重命名了“所有大写字母”设置。

changelog

The celery_ prefix has also been removed, and task related settings from this name-space is now prefixed by task_, worker related settings with worker_.

请在settings.py中设置芹菜ALWAYS_EAGER=True后重新启动芹菜工人,并查看是否有帮助。

相关问题 更多 >