[rabbitmq-discuss] Does clustering increase throughput?
Simon MacMullen
simon at rabbitmq.com
Mon Mar 5 16:07:07 GMT 2012
I'm not sure I fully understand your test, however it's important to
understand that non-HA queues only live on one node in a cluster (and HA
queues need to do enough extra work that they're slower anyway).
Therefore connecting to one queue from multiple nodes in the cluster
will not in general go any faster.
Clustering increases throughput in the case where you have a bunch of
queues. They will tend to end up distributed across nodes so each
individual node has fewer queues on it.
Cheers, Simon
On 26/02/12 17:29, matan zinger wrote:
> Hi All,
>
> I've read and experienced with rabbit mq clustering feature over 2
> machines.
> Below are the results I found, which I found quite strange:
>
> 0. Direct exchange named "myexchange" was defined.
> 1. rabbit1& rabbit2 were configured to work in a cluster. both are
> using disc.
> 2. queue named "in.queue" was configured, and binded to routing key
> "in"
> 3. 100k messages were enqueued with routing key "in". connection was
> to rabbit1.
> 4. Running a single message handler on rabbit1 machine, connected to
> rabbit1 mq.
> Handling throuput: 2k messages / second
> 5. Running handlers on both rabbit1& rabbit2 - each reached the
> throuput of ~400 messages / second.
> After stopping the message handler on rabbit2, handler on rabbit1
> returned to 2k messages / second.
> 6. Running a single message handler on rabbit1 machine, connected to
> rabbit2 mq.
> Handling throuput: 400 messages / second
>
> I still can't figure out this behavior:
> I understood form the documentation that adding nodes to a cluster is
> done in order to INCREASE throughput.
> However, adding an additional handler leads to a degredation in
> performance!
>
> The second thing I can't figure out is the difference is throughput
> between the cases of a single handler on rabbit1, and a single handler
> on rabbit2.
> If both nodes are active, and are using discs, than they should be
> exactly the same.
> There is no notion of master/slave.
> If so - how come a different throughput received when running a single
> handler on each of them?
>
> Please help me understand these conflicts.
>
> Thanks,
> Matan
> _______________________________________________
> rabbitmq-discuss mailing list
> rabbitmq-discuss at lists.rabbitmq.com
> https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
--
Simon MacMullen
RabbitMQ, VMware
More information about the rabbitmq-discuss
mailing list