[rabbitmq-discuss] ordering semantics

Jim Stabile jstabile at vmware.com
Fri Apr 30 20:54:36 BST 2010


I'm trying to get a handle on ordering semantics on the topic exchange.

Assume there are two publishers, each on their own channel.  Publishers produce a stream of messages.  So:

Publisher A produces A1, A2, A3 (in that order) Publisher B produces B1, B2, B3 (in that order)

There is a single subscriber on a queue that all the messages produced by both publishers are targeted to.


1. Messages A1, A2, A3 are received in that order.  Messages B1, B2, B3 are received in that order.  Correct?

2. Messages from A can be interleaved from B as in: A1, A2, B1, B2, B3, A3.  (Still subject to the constraint from question 1 above) Correct?

3. In the event of a failure of a node in a cluster, messages may be lost, but do they still obey the strict ordering, even though messages may travel a different route in the cluster?

4. I'm assuming that the ordering semantics guaranteed per-channel, correct?

5.Can a subscriber determine a unique ID of the actual sender (i.e., can a subscriber know if a message was sent by A or B)?



-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20100430/7c56e327/attachment.htm 

More information about the rabbitmq-discuss mailing list