[rabbitmq-discuss] |Spam| Queue message replication in clusters with mirrored queues
Simon MacMullen
simon at rabbitmq.com
Mon May 19 16:18:03 BST 2014
On 19/05/2014 15:43, Devangana Tarafdar wrote:
> I am trying to understand how clusters with mirrored queues operate on
> data (messages as well as data about queues). From the doc at
> https://www.rabbitmq.com/ha.html
>
> "All actions other than publishes go only to the master, and the master
> then broadcasts the effect of the actions to the slaves. Thus clients
> consuming from a mirrored queue are in fact consuming from the master."
> So I understand that;
>
> 1. There is only one node that has the queue process running. Other
> nodes have enough information to start up a queue process should the
> master go down.
Other nodes have a slave process that is quite a lot of the way towards
being a queue, it maintains (almost) all the same data structures, it
just never talks to clients.
So it depends how you look at it.
> 2. Queue data for persistent queues is stored on disk on all nodes of
> cluster. So persistent data is replicated.
> 3. Queue data that is not persistent is stored on ram on all nodes of
> the cluster. So ram data is replicated.
Replication is orthogonal to persistence really. And it doesn't really
make sense to think of queues as "persistent" or not since durable
queues can contain transient messages, and transient queues can page to
disk under memory pressure...
Cheers, Simon
More information about the rabbitmq-discuss
mailing list