[rabbitmq-discuss] Persister crashes Rabbit

Ben Hood 0x6e6562 at gmail.com
Sat Nov 15 19:18:40 GMT 2008


On Sat, Nov 15, 2008 at 6:43 PM, Ilya Grigorik <ilya at aiderss.com> wrote:
> - If we connect multiple nodes together (without persistence), and then
> create an exchange, the in-memory queues will be replicated across all
> nodes?

No, only broker entities are replicated (exchanges, queues and
bindings), but not the actual messages as indicated in the clustering
guide: http://www.rabbitmq.com/clustering.html

The reason for this is primarily the cost of inter-node message replication.

> - Assuming the cluster is running, is it up to the client to determine which
> node it wants to connect to (either explicitly, or through some load
> balancer in between)?


> - Now, if we add persistence to the queue, will a copy of the queue be
> stored on each node in the cluster?

You a queue only exists on one node in the cluster. Persistent
messages that are routed to a queue are written to disk on the node
where the queue exists. Also you need to differentiate between
persistent messages (a property that the publisher sets) and
persistent queue (a property that is set when creating a queue). The
implication is that you can send persistent messages to a transient
queue and vice versa.



More information about the rabbitmq-discuss mailing list