[rabbitmq-discuss] High Scalability and High Availability...How to?!!
shadimari at gmail.com
Sun Jun 15 09:13:28 BST 2014
Thanks for clarifying this Michael. I am trying to reflect what you have
said on my scenario...
Let's say i have two nodes N1 and N2, and one Queue that is mirrored, the
master and slave reside on N1 and N2 respectively; in such a case and as
based on what you have advised, there is no way to distribute consumers and
publishers load across two nodes because the same work will be done by the
two nodes; thus to rectify, load distribution manifests itself when we have
two or more mirrored queues distributes across 3 or more machines...
Is my assumption correct?
On Thu, Jun 12, 2014 at 9:21 PM, Michael Klishin <mklishin at gopivotal.com>
> On 12 June 2014 at 22:18:27, Shadi Mari (shadimari at gmail.com) wrote:
> > > Does that mean that if i have two publishers declare the same
> > queue on different nodes of the cluster, i will end up having two
> > master queues and two slaves?
> queue.declare is idempotent. If you declare a queue that already exists
> with the same attributes, nothing happens. If the attributes differ, you
> an error.
> > What is the right way and best practice to mix load balancing with
> > HA on RabbitMQ?
> "the right way" depends on what you do. Having a load balancer in front of
> a cluster to distribute queue masters is one technique. Not mirroring to
> nodes in the cluster is another (2-3 nodes is often sufficient). Having
> your consumers connect to queue masters to avoid intra-cluster traffic
> (you can infer queue masters from queue info over HTTP API) will
> increase throughput.
> The goal is to spread queue masters between nodes and improve data
> Software Engineer, Pivotal/RabbitMQ
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the rabbitmq-discuss