官方文档参考: http://docs.celeryproject.org/en/latest/userguide/routing.html#exchanges-queues-and-routing-keys
官方文档里面有的这里就不再赘述。
项目要求,现在是一个服务器里面部署了两个server, 这两个server要通用rabbimq, 那mq怎么区分,哪个生产者过来的msg,交给哪个queue去处理呢,所以就有了本文介绍的配置
配置celery.py文件
from __future__ import absolute_import, unicode_literals
from kombu import Queue, Exchange
import os
import datetime
import django
from celery import Celery
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'ego_gw.settings')
django.setup()
app = Celery('ego_gw')
app.now = datetime.datetime.now
app.config_from_object('ego_gw.celeryconfig', namespace='CELERY')
app.autodiscover_tasks()
# 下面的配置是区别两个项目的msg,分给哪个queue,要配置routing key
app.conf.task_default_queue = 'image_server'
app.conf.task_que