[rabbitmq-discuss] ordering semantics

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


Hi,



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.



Questions:

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)?



Thanks,

Jim

-------------- 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