Thanks Marek,<br><br>We will do our homework on these lines and will post our doubts again.<br><br>Thanks &amp; Regards,<br>Kshitiz Garg<br><br><div class="gmail_quote">On Mon, Nov 22, 2010 at 3:55 PM, Marek Majkowski <span dir="ltr">&lt;<a href="mailto:majek04@gmail.com">majek04@gmail.com</a>&gt;</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 &lt;<a href="mailto:stephanion2002@gmail.com">stephanion2002@gmail.com</a>&gt; wrote:<br>


&gt; Since our 8 queues are going to handle lot of data, we can cluster 8<br>
&gt; RabbitMQ nodes, each to serve a single queue and its contents. But there are<br>
&gt; 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>
&gt; 1. In the case a node (say, containing queue a) is down, how will the queue<br>
&gt; a&#39;s consumers will get their messages?<br>
<br>
</div>They won&#39;t.<br>
<div class="im"><br>
&gt; 2. A load balancer like HA Proxy in front of these nodes will not be of any<br>
&gt; 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>
&gt; I am afraid that since we are neither getting &quot;Load balancing&quot; nor &quot;High<br>
&gt; availability&quot;,  we will have to consider another broker.<br>
<br>
</div>For HA we&#39;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&#39;re currently working on Active-Active HA, but it will take us some time.<br>
<br>
Clustering does help in &quot;Load balancing&quot; but only in some situations.<br>
For example it may be pretty useful for the &#39;fanout&#39; cases, when you<br>
have many queues.<br>
<br>
But if you have a single queue, clustering won&#39;t help you.<br>
It&#39;s a bit like with database sharding, if you have one monolitic table -<br>
sharding won&#39;t help.<br>
<br>
Cheers,<br>
<font color="#888888">  Marek<br>
</font></blockquote></div><br>