0
votes

I have a RabbitMQ topology(set up independent of celery) with a queue that is bound to two exchanges with the same routing key. Now, I want to set up a celery instance to post to the exchanges and another one to consume from the queue.

I have the following questions in the context of both the producer and the consumer:

  1. Is the CELERY_QUEUES setting necessary in the first place if I specify only the exchange name and routing key in apply_async and the queue name while starting up the consumer? From my understanding of AMQP, this should be enough...

  2. If it is necessary, I can only set one exchange per queue there. Does this mean that the other binding will not work(producer can't post to the other exchange, consumer can't receive messages routed through the other exchange)? Or, can I post and receive messages from the other exchange regardless of the binding in CELERY_QUEUES?

1

1 Answers

0
votes

CELERY_QUEUES is used only for "internal" celery communication with it's workers, not with your custom queues in rabbitmq independent of celery.

What are you trying to accomplish with two exchanges with the same queue?