Сельдерей: игнорирование BROKER_URL в конфигурационном файле

Мой вопрос дубликатэтот, но более подробно.

Проблема в том, что у меня естьBROKER_URL установить в моем файле конфигурации Celery, но это не отражено в, и яя загрузка конфига: я проверил, и этоявляется загружается - фактически устанавливаются другие определенные здесь константы, но неBROKER_URL.

Это похоже на ошибку, но я хотел быть уверен.

celeryconfig.py:

BROKER_URL = "amqp://user:[email protected]:5672//vhost"

CELERY_TASK_SERIALIZER = 'json'
CELERY_RESULT_SERIALIZER = 'json'
CELERY_ENABLE_UTC = True

(JSON используется как сериализатор, а неPickle, так что я знаю, что это работает.)

app.py:

from celery import Celery

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

Вызов работника:

celery -A app.app worker -l info

Но тогда я получаю это:

[2013-11-12 11:20:51,610: INFO/MainProcess] consumer: Connected to amqp://[email protected]:5672//.

Я пытался расстатьсяBROKER_URL, но безрезультатно:

BROKER_TRANSPORT = 'amqp'
BROKER_USER = 'user'
BROKER_PASSWORD = 'password'
BROKER_HOST = 'remote.server.com'
BROKER_PORT = 5672
BROKER_VHOST = '/vhost'

Интересно, что это работает, когда я явно установитьBROKER_URL вapp.py:

from celery import Celery

app = Celery('tasks', broker='amqp://guest@localhost//')
app.config_from_object('celeryconfig')
app.conf.BROKER_URL = "amqp://user:[email protected]:5672//vhost"

Ответы на вопрос(3)

Ваш ответ на вопрос