Thanks Marek,<br><br>We will do our homework on these lines and will post our doubts again.<br><br>Thanks & Regards,<br>Kshitiz Garg<br><br><div class="gmail_quote">On Mon, Nov 22, 2010 at 3:55 PM, Marek Majkowski <span dir="ltr"><<a href="mailto:majek04@gmail.com">majek04@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><div class="im">On Sat, Nov 20, 2010 at 05:01, Kshitiz Garg <<a href="mailto:stephanion2002@gmail.com">stephanion2002@gmail.com</a>> wrote:<br>
> Since our 8 queues are going to handle lot of data, we can cluster 8<br>
> RabbitMQ nodes, each to serve a single queue and its contents. But there are<br>
> two concerns:<br>
<br>
</div>Remember that any modification of shared database must be agreed between<br>
all the nodes in the cluster. 8 nodes is a lot and might result in a<br>
latency for commands like exchange.declare or queue.bind. We rarely<br>
see a cluster of more than a few nodes.<br>
<div class="im"><br>
> 1. In the case a node (say, containing queue a) is down, how will the queue<br>
> a's consumers will get their messages?<br>
<br>
</div>They won't.<br>
<div class="im"><br>
> 2. A load balancer like HA Proxy in front of these nodes will not be of any<br>
> use since nodes are not similar.<br>
<br>
</div>It would help to spread the connections equally between nodes.<br>
That is pretty useful if you have a lot of connections.<br>
<div class="im"><br>
> I am afraid that since we are neither getting "Load balancing" nor "High<br>
> availability", we will have to consider another broker.<br>
<br>
</div>For HA we're usually suggesting Active-Passive failover:<br>
<a href="http://www.rabbitmq.com/pacemaker.html" target="_blank">http://www.rabbitmq.com/pacemaker.html</a><br>
We're currently working on Active-Active HA, but it will take us some time.<br>
<br>
Clustering does help in "Load balancing" but only in some situations.<br>
For example it may be pretty useful for the 'fanout' cases, when you<br>
have many queues.<br>
<br>
But if you have a single queue, clustering won't help you.<br>
It's a bit like with database sharding, if you have one monolitic table -<br>
sharding won't help.<br>
<br>
Cheers,<br>
<font color="#888888"> Marek<br>
</font></blockquote></div><br>