[rabbitmq-discuss] Throttling messages sent out upon reconnect

Matthias Radestock matthias at rabbitmq.com
Fri Jun 1 10:53:06 BST 2012


Greg,

On 28/05/12 14:28, Greg Rice wrote:
> I'm using the Bunny AMQP library to publish messages to a queue
> cluster. If the cluster goes down, or the network drops out, messages
> spool up on the publisher side. When network connectivity is restored,
> those spooled messages all go out at once, hiking up CPU load on the
> publisher's end.

What buffers the messages? The app? Bunny? The kernel?

> I'd like to throttle publishing so that even on reconnect, publishing
> doesn't exceed a certain rate of messages per second. Either that, or,
> less ideally, I'd like to limit the amount of messages spooled so that
> no more than, say, 100 messages can back up while the network is down.

The CPU hike surely should last only a fraction of a second, given that 
a rabbit client ought to be able to publish messages at a rate of tens 
of kHz.

> Where should I be looking for a solution to this problem?

You'd either have to patch Bunny or the app, depending on where the 
buffering occurs.

Matthias.


More information about the rabbitmq-discuss mailing list