[rabbitmq-discuss] RabbitMQ 2.8.0 released

Brendan Hay 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:
>
> http://www.rabbitmq.com/**memory.html<http://www.rabbitmq.com/memory.html>
>
> 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
> messages.
>
> * 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...
URL: <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20120319/ce02d662/attachment.htm>


More information about the rabbitmq-discuss mailing list