[rabbitmq-discuss] Regarding FIFO Support

Jason J. W. Williams jasonjwwilliams at gmail.com
Wed Jul 7 22:02:16 BST 2010


Matthias,

That's good to know. Could have sworn there has been discussion here
about ensuring order of delivery is up to the consumer/producers
involved.

-J

On Wed, Jul 7, 2010 at 2:52 PM, Matthias Radestock
<matthias at rabbitmq.com> wrote:
> Tim, Jason,
>
> Jason J. W. Williams wrote:
>>
>> On Wed, Jul 7, 2010 at 2:37 PM, Timothy Chen <tim at evri.com> wrote:
>>>
>>> I remember reading from somewhere that RabbitMQ doesn't support FIFO, or
>>> in other words doesn't gurantee ordering of messages being
>>> published.
>>>
>>> I wonder if this is true?
>>
>> This is true.
>
> or not.
>
> RabbitMQ conforms to the ordering guarantees specified by AMQP. See section
> 4.7 of the AMQP 0-9-1 spec:
>
> <quote>
>
> 4.7 Content Ordering Guarantees
>
> The order of methods flowing across a channel is stable: methods are
> received in the same order as they are sent. This is guaranteed by the
> TCP/IP transport used by AMQP. Further, contents are processed in a
> stable manner by the server. Specifically, contents flowing through a single
> path within the server will remain ordered. For contents of a given priority
> flowing through a single path, we define a content
> processing path as consisting of one incoming channel, one exchange, one
> queue, and one outgoing channel.
>
> Guidelines for implementors:
>
> The server MUST preserve the order of contents flowing through a single
> content processing path, unless the redelivered field is set on the
> Basic.Deliver or Basic.Get-Ok methods, and according to the rules governing
> the conditions under which that field can be set.
>
> </quote>
>
>
> Regards,
>
> Matthias.
>


More information about the rabbitmq-discuss mailing list