我正在使用Django 2.0和Celery 4和SQS作为代理。
我使用了以下CELERY_BROKER_TRANSPORT_OPTIONS:
{'queue_name_prefix': 'qa-', 'region': 'eu-west-1'}
我有:
- 使用
celery -A <app_name> worker -Q <queue_name>
运行的专用辅助角色 - 使用
@shared_task
装饰器的任务 - 使用
.delay()
调用任务的 Django Web 服务。
问题是worker能够读取broker_transport_options,并且正如我在设置中所述,它在正确的区域中创建了一个具有正确前缀的队列,但是当Django忽略这些设置并将任务推送到没有给定前缀且不在正确区域中的队列时。
有谁知道这里的情况是什么?
谢谢 达尔
确保正确设置了 Celery conf 的命名空间设置