[rabbitmq-discuss] Understanding RabbitMQ clustering

Kshitiz Garg stephanion2002 at gmail.com
Fri Oct 29 14:31:48 BST 2010


Hi Jon,

Thanks for your reply. I want a similar setup as mentioned by you.

Should I refer to "RabbitMQ High Availability Guide" for setting up a
system like yours? does "haproxy" automatically decides the routing of
the message depending on the availability of rabbitMQ instances
sitting behind this ?

Regards,
Kshitiz

On Fri, Oct 29, 2010 at 6:39 PM, Jon Brisbin
<jon.brisbin at npcinternational.com> wrote:
>
> Do you want failover or clustering (or both)?
> I use both. I have haproxy as a TCP proxy that sits in front of the RabbitMQ servers and acts as a failover and load balancer mechanism.
> Behind the proxy are clustered RabbitMQ instances, which means they use the standard RabbitMQ clustering mechanism and have the same queues, exchanges, and whatnot on each box.
> I then use Spring AMQP to connect to the *proxy*, who decides which of the RabbitMQ instances I actually get connected to.
>
> Jon Brisbin
> Portal Webmaster
> NPC International, Inc.
>
> On Oct 29, 2010, at 1:27 AM, Kshitiz Garg wrote:
>
> Hi,
>
> I have just started working with RabbitMQ for my cloud messaging/eventing application. The proof of concept worked well with rabbitMQ and Spring AMQP. Now, I want to start preparing for scalability.
> I am able to setup a rabbitMQ cluster with 2 rabbitMQs installed on 2 separate machines. Now I want to know what is achieved by "clustering" in terms of rabbitMQ.
>
> My spring amqp template has been given a connection Factory like this:
>
>     <!-- RabbitMQ configurations -->
>     <!-- Define a connectionFactory -->
>     <bean id="connectionFactory"
>         class="org.springframework.amqp.rabbit.connection.SingleConnectionFactory">
>         <constructor-arg value="localhost" />
>         <property name="username" value="guest" />
>         <property name="password" value="guest" />
>     </bean>
>
>     <!-- Configure the admin class -->
>     <bean id="amqpAdmin" class="org.springframework.amqp.rabbit.core.RabbitAdmin">
>         <constructor-arg ref="connectionFactory" />
>     </bean>
>
> Here I have specified localhost, so now, if I send a amqp message through rabbitMQ and this localhost broker is not up, will that message go through its cluster node automatically ?
>
> If that's the case, then what do we mean by high availability?
>
> Thanks,
> Kshitiz Garg
>
>
>
>
> _______________________________________________
> rabbitmq-discuss mailing list
> rabbitmq-discuss at lists.rabbitmq.com
> https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
>
>
>


More information about the rabbitmq-discuss mailing list