[rabbitmq-discuss] Cluster to increase availability

Guilherme Labigalini guilherme.labigalini at gmail.com
Wed Jan 1 14:19:55 GMT 2014


I was doing some tests by setting a RabbitMQ cluster. I have setup two
servers as disk nodes, the queues/exchanges that I created in NODE1 are
visible on the NODE2, I tried to publish one message to the queue on NODE1
by posting to the "replicated" exchanged on the NODE2 and it worked well -
the message was added to the queue on NODE1.

To test the "Availability" of my cluster, I stopped Rabbit on NODE1 and
tried to publish the a message connecting on the NODE2, since the exchange
was bind to a queue on the NODE1 that was down it failed:

My question is, even though I have a cluster, all my nodes must be up
during publish operations? How I can make sure that my 'producers' can
publish messages when at least one node in the cluster is up and running?
Today our code is saving the message in the SQL database if the RabbitMQ is
not running and we have a second job that reads the messages from this
table and send to Rabbit once it is running again.

Another option to increase availability would be setup several
non-clustered Rabbit nodes with the same queues/exchanges and use the
federation/shovel plugin to move the messages to the "master" node that
that my consumers are connected?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20140101/04ffb056/attachment.html>

More information about the rabbitmq-discuss mailing list