[rabbitmq-discuss] Federated Exchange Upstream / Downstream Names

Chris stuff at moesel.net
Mon Oct 7 21:53:07 BST 2013


I was wondering if someone could please advise me on the best approach to
accomplish the following:

I essentially want to federate an exchange such that the "upstream"
exchange name is different than the exchange name that the downstream
queues bind to.

Maybe a use case would explain it better...

Imagine Broker A, Broker B, and Broker C.  Each federates a  direct
exchange based on their name (for example, "A.requests", "B.requests",
"C.requests").  Within each broker, however, I don't want consumers to need
to know the broker name-- they should be able to bind their queues to
(direct) exchange "Incoming.requests" and receive messages to "A.requests",
"B.requests", or "C.requests" respectively.

The best I can come up with is to actually make the federated exchanges be
"fanout" exchanges, then within each broker, create the local
"Incoming.requests" direct exchange, and use E2E bindings to bind the
"Incoming.requests" to the federated exchange (for example "A.requests").

Is this how you would recommend it?  Does this defeat RabbitMQ's smart
routing?  (will it cause all messages to be sent to the federated exchange
since it is fanout, or will it be smart enough to consider the queue
bindings on the E2E bound 'Incoming.requests' direct exchange?)

If I'm not making sense, feel free to ask me to clarify.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20131007/e51034a8/attachment.htm>

More information about the rabbitmq-discuss mailing list