芹菜不尊重BROKER_URL

时间:2013-10-19 04:57:26

标签: redis celery

我试图在stackoverflow和谷歌上搜索相关问题,但没有找到可以解决我问题的东西。

我将/ etc / default / celeryd配置中的BROKER_URL设置为redis。 BROKER_URL = “redis的://本地主机:6379”

但是当我启动/etc/init.d/celeryd启动时

它说:“ERROR / MainProcess]消费者:无法连接到amqp://guest@127.0.0.1:5672 //:”

同样在文档页面上,我看到了celeryconfig.py。我不明白我为什么要有两个配置文件? / etc / default / celeryd用于配置。

2 个答案:

答案 0 :(得分:1)

确保在定义应用时未设置broker。当我从教程中复制并粘贴代码时,这就是我的一点。花了我几个小时才意识到我用这一行覆盖了我自己的配置:

app = Celery('tasks', broker='amqp://guest@localhost//')

应该这样说:

app = Celery('tasks')

答案 1 :(得分:0)

如果将名称空间设置为CELERY_BROKER_URL,则可以尝试使用BROKER_URL而不是app.config_from_object("django.conf:settings", namespace="CELERY")

参考:http://docs.celeryproject.org/en/latest/history/whatsnew-4.0.html#latentcall-django-admonition