Django & Celery - проблемы с маршрутизацией

Я использую Django и Celery и пытаюсь настроить маршрутизацию к нескольким очередям. Когда я указываю задачуrouting_key а такжеexchange (либо в декораторе задачи, либо используяapply_async()), задача не добавляется в брокер (это Kombu, подключающийся к моей базе данных MySQL).

Если я укажу имя очереди в декораторе задачи (что будет означать, что ключ маршрутизации игнорируется), задача работает нормально. Кажется, это проблема с настройкой маршрутизации / обмена.

Есть идеи, в чем проблема?

Вот настройки:

Settings.py

INSTALLED_APPS = (
    ...
    'kombu.transport.django',
    'djcelery',
)
BROKER_BACKEND = 'django'
CELERY_DEFAULT_QUEUE = 'default'
CELERY_DEFAULT_EXCHANGE = "tasks"
CELERY_DEFAULT_EXCHANGE_TYPE = "topic"
CELERY_DEFAULT_ROUTING_KEY = "task.default"
CELERY_QUEUES = {
    'default': {
        'binding_key':'task.#',
    },
    'i_tasks': {
        'binding_key':'important_task.#',
    },
}

Tasks.py

from celery.task import task

@task(routing_key='important_task.update')
def my_important_task():
    try:
        ...
    except Exception as exc:
        my_important_task.retry(exc=exc)

Начальная задача:

from tasks import my_important_task
my_important_task.delay()

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

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