[rabbitmq-discuss] Clustering and Scalability

Simon MacMullen simon at rabbitmq.com
Wed Apr 10 12:40:05 BST 2013

Sorry about the previous response, hit "send" too early...

On 09/04/13 13:45, Chris Nicel wrote:
> Hi Guys,
> We are looking to use RabbitMQ as a messagebus in a scalable
> application. In order to achieve complete scalability it is important
> that we can ramp up our RabbitMQ cluster to have more nodes when a
> performance bottleneck is realised.
> I have reviewed the clustering guidelines and understand the queues
> do not migrate across a cluster when the nodes are being taken down.
> If a node fails/is taken down then queues for which it maintained
> will no longer be protected if an HA policy of exactly two nodes is
> used, until that node is restored that is.

Or until another node comes on line, or you change the policy.

> I believe these three questions will further my understanding:

I assume you are asking these questions in the context of "exactly" mode...

> Is there a way to re-nice the queues across the cluster to even out
> the load?

> Is there a way to migrate already existing queues to new nodes as
> slaves?

You could do both of these by setting a (queue-specific?) policy using 
"nodes" with a higher priority, waiting for the queues to migrate, and 
then deleting it again.

But it's becoming apparent that people seem to want something more 
automated that that. What exactly that would look like I'm less sure.

> If a queue loses a node and a new node is added to the cluster, will
> the new node join the ha policy for that particular queue?

Yes. (Again assuming "exactly" mode).

Cheers, Simon

Simon MacMullen
RabbitMQ, VMware

More information about the rabbitmq-discuss mailing list