[rabbitmq-discuss] RabbitMQ 2.8.0 released
brendan at soundcloud.com
Mon Mar 19 12:41:45 GMT 2012
Interesting approach, thanks Simon
On Mon, Mar 19, 2012 at 1:36 PM, Simon MacMullen <simon at rabbitmq.com> wrote:
> On 19/03/12 12:24, Brendan Hay wrote:
>> Would it be possible to describe in more (technical/erlangy) detail how
>> the new flow-control mechanism works?
> There's a few words at:
> under "Per-Connection Flow Control", although that might not count as
> "technical/erlangy". In terms of implementation:
> * A process that forwards AMQP messages on inside the broker is issued
> credit for each process it sends messages to.
> * The receiving process will issue more credit as it processes these
> * If a process which receives messages from inside the broker runs out of
> credit, it will in turn stop issuing credit until it gets more.
> * If a process which receives messages from the network runs out of
> credit, it will stop reading from its socket until it gets more.
> * See the 'credit_flow' module (and its call sites) for more details.
> Since all the processes in the chain need to opt in to this new mechanism
> for it to work, only the most common paths do flow control: messages
> published via AMQP and STOMP. Messages published via other direct client
> users (e.g. JSON-RPC or management) and messages which arise spontaneously
> in the broker (dead lettering, log and trace messages) are not flow
> controlled. Indeed it's hard to see how they could be.
> Cheers, Simon
> Simon MacMullen
> RabbitMQ, VMware
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the rabbitmq-discuss