qpid-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gordon Sim <g...@redhat.com>
Subject Re: AMQP Paper, using Qpid
Date Wed, 12 Nov 2008 18:21:54 GMT
gregory james marsh wrote:
> Hi Carl,
> A question from our group about the following client params you mentioned
> in your email (included below):
>   --max-frame-size N (65535)        the maximum frame size to request.
>   --bounds-multiplier N (2)         bound size of write queue (as a
> multiple of
>                                     the max frame size).
>   --tcp-nodelay                     Turn on tcp-nodelay
> Could you further explain/clarify the behavior of "--bounds-multiplier".

There is a queue of outgoing frames that are being written to the wire 
by a separate thread from the application thread that executes commands 
and publishes messages.

This queue can grow quite large and the bounds-multiplier is a somewhat 
clunky means of controlling that. It is specified as multiples of the 
buffer size which is controlled by the max frame size property. So a 
bounds multiplier of 2 means that only two buffers worth will be queued 
for writing before the application thread blocks.

> We read over the code comments in
> trunk/qpid/cpp/src/qpid/client/ConnectionSettings.h
> What exactly is the "write queue?"  Based on the code comments, does
> bounds allow outgoing frames to be larger than maxFrameSize for the
> connection?

No, frames can never exceed the max-frame-size (though a message can be 
broken into more than one frame, so the frame size doesn't prevent 
larger messages being sent).

View raw message