[rabbitmq-discuss] Performance Hit when using Federation
Simon MacMullen
simon at rabbitmq.com
Wed Jan 30 17:59:34 GMT 2013
On 30/01/13 17:26, Eric Cozzi wrote:
> Hello all,
>
> I am investigating RabbitMQ for a project where we would need to
> federate multiple brokers. From my testing, I'm seeing acceptable
> throughput results as long as the server and client are bot talking to
> the same RabbitMQ server instance. However, as soon as I have the Server
> and Client talking to different servers using a federated exchange, I'm
> only seeing 1/4 of the throughput. Is this expected?
Well, federation does require that the message be published on the
source broker, consumed and republished by the federation plugin and
finally consumed for real. So I would expect 1/2 the throughput for a
simple Producer -> Broker A -> Broker B -> Consumer case.
Where federation *helps* throughput is when most of your messages can be
local. Ultimately if every message has to go everywhere, you have a
scaling problem anyway :-)
However, I wouldn't expect 1/4 the throughput... except that federation
does transfer messages using confirms and acks. If your publishers and
consumers are *not* using confirms / acks then they could go faster
enough that the federation step in the middle would be that much more
expensive. Does that sound like what might be happening?
And would anyone be interested in an optional mode for federation to
disable confirms and acks, going faster at the expense of guaranteed
delivery?
Cheers, Simon
--
Simon MacMullen
RabbitMQ, VMware
More information about the rabbitmq-discuss
mailing list