[rabbitmq-discuss] Sorry if this is a newbie question.

Emile Joubert emile at rabbitmq.com
Tue Jul 17 15:27:28 BST 2012


Hi,

On 16/07/12 21:24, Jason Wainwright wrote:
> I want to create a distributed pub\sub messaging system that talks
> broker to broker in a one to many fashion. In essence, I would like
> Broker A to publish messages on Queue 1, which, in turn, pushes messages
> to Broker B and C on Queue 1.  A pub\sub on the broker level.

Remember that messages are published to an exchange, not a queue.

> http://hg.rabbitmq.com/rabbitmq-federation/file/rabbitmq_v2_5_0_preview/README
> http://www.rabbitmq.com/blog/2011/06/22/federation-plugin-preview-release/
> http://www.rabbitmq.com/federation.html

For a useful comparison of different distribution methods also look at
http://www.rabbitmq.com/distributed.html

> , I have come to the, possibly misguided, conclusion that the federation
> is designed in the reverse. (i.e. Brokers B and C publish to Queue 1
> which in turn pushes messages to Broker A on Queue 1) More of a many to
> one design.

Federation supports many topologies, including fanout, which is what you
are aiming for. For examples of this and other topologies see
http://www.rabbitmq.com/federation.html#topology-diagrams

> During my research I thought Shovel might have been the answer, but I
> found the it worked well creating a one to one connection, not one to many.

It is possible to set up separate shovels for multiple downstream
brokers and configure a binding and queue for each in such a way that a
message to the upstream exchange gets relayed by each shovel.


-Emile




More information about the rabbitmq-discuss mailing list