[rabbitmq-discuss] ConfirmSelect() overhead

Matthias Radestock matthias at rabbitmq.com
Thu May 30 18:23:44 BST 2013


On 30/05/13 18:12, Adam Morgan wrote:
> Has anyone else done a test to determine the impact of enabling
> confirmSelect() on publishing channels with respect to publishing rates?
>   In preliminary testing I have seen slower throughput by a ratio of
> about 40:1.  Is this in line with what others have seen?

How are you using confirms?

If you are waiting for a confirm after every single publish then things 
will go very slow indeed, since you are effectively making publish 
synchronous, taking in the entire round trip and processing latency, 
and, depending on the delivery mode, cost of writing to disk.

So don't do that. Ideally applications should handle confirms 
asynchronously, decoupled from publishing. If that is too hard / 
impractical, at least batch the waiting for confirms, e.g. wait for 
confirms every n messages or n seconds.


More information about the rabbitmq-discuss mailing list