[rabbitmq-discuss] Controlling upstream federation queue names

Simon MacMullen simon at rabbitmq.com
Fri Sep 21 11:11:33 BST 2012


On 21/09/12 09:01, Brendan Hay wrote:
> Hi,

Hi.

> Say I have two downstream brokers connected to a single upstream,
> upon which lives a single exchange.
>
> Can I configure the plugin, to create the upstream federation queues,
> with the same name so that they round-robin over messages coming
> off the upstream exchange, to ensure messages are delivered to
> _either_ of the downstream pair (rather than both)?

Sort of.

You could set the 'local_nodename' for each broker to the same value. 
They will both identify themselves the same way to the upstream, and 
thus share queues.

But they won't be aware of each other, and they will thus stomp on each 
other's bindings upstream. So that's not good.

Maybe we need to separate the federation from the round-robinning? You 
could use the consistent hash exchange upstream as a source, and then 
bind two exchanges as local destinations to that, and then federate with 
those two exchanges. You won't share the upstream queues but you'll get 
a similar round-robinning effect (the difference being that if one link 
goes down messages will back up for it, rather than the other link 
taking the strain).

Cheers, Simon

-- 
Simon MacMullen
RabbitMQ, VMware


More information about the rabbitmq-discuss mailing list