[rabbitmq-discuss] "Load balancing" queue creation

Tim Watson tim at rabbitmq.com
Fri Jan 11 11:11:10 GMT 2013


Adam - sorry, ignore me, I'm talking nonsense here... :/

On 01/11/2013 10:59 AM, Tim Watson wrote:
> Hi Adam,
>
> On 01/10/2013 01:24 PM, Adam Rabung wrote:
>> Hello,
>> After reading this 
>> <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/2012-January/017297.html> 
>> and this 
>> <http://rabbitmq.1065348.n5.nabble.com/Are-queues-replicated-across-a-cluster-td4670.html>, 
>> I understand that connecting to random nodes of a cluster does not 
>> really help spread the processing cost across all of the nodes - 
>> processing happens in the master (and slaves), regardless of what 
>> node I connect to.
>>
>> Does this suggest that I should take great care of what node I 
>> connect to when _creating_ a queue? If I use 
>> ConnectionFactory.newConnection(Address[]) with the same array each 
>> time, won't a majority of queues be created on the first node of that 
>> array, creating a load balance problem? This scenario assumes we 
>> mirror only to a subset of nodes.
>>

I should have taken more notice of Address[] here, but also if you're 
*not* mirroring then whilst the queue records get replicated throughout 
the cluster, the queue process (which actually handles messages) only 
resides on the one node. So yes, you should Random.shuffle (or something 
like that) the Address[] or load balance. Also even with mirror queues 
the master is where the bulk of the work is taking place, so the same 
applies.

Sorry for the confusion!

Cheers,
Tim
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20130111/17bdc3c5/attachment.htm>


More information about the rabbitmq-discuss mailing list