[rabbitmq-discuss] Load balancing/ack interaction.

Jason J. W. Williams jasonjwwilliams at gmail.com
Thu Jan 15 22:42:36 GMT 2009


Hi Ben,

That would be very helpful. Thank you!

-J

On Thu, Jan 15, 2009 at 3:41 PM, Ben Hood <0x6e6562 at gmail.com> wrote:
> Jason,
>
> On Thu, Jan 15, 2009 at 10:33 PM, Jason J. W. Williams
> <jasonjwwilliams at gmail.com> wrote:
>> I noticed that consumer apps who had not yet ack'd the message they
>> had received would receive new messages. I had assumed they wouldn't
>> be assigned a new message from the queue until they had ack'd what
>> they had already received.
>
> I see you're talking about egress flow control.
>
> ATM the only way for the consumer to stop the flow of messages is to
> exert TCP back pressure on the server. If there is no back pressure,
> the server will continue to deliver messages regardless of whether
> prior messages have been ack'd or not.
>
> Having said that, I am halfway through QA'ing a patch to implement the
> basic.qos command, which will allow you to specify a prefetch window.
>
> So the consumer specifies the window size and the server will halt the
> flow of messages until enough acks have come back to push the window
> forwards.
>
> This patch should land quite soon.
>
> HTH,
>
> Ben
>




More information about the rabbitmq-discuss mailing list