[rabbitmq-discuss] Clustering Internals

Jason J. W. Williams jasonjwwilliams at gmail.com
Thu Mar 24 23:16:50 GMT 2011

> Correct. Basic.Publish is an async method which is entirely fire and
> forget. Any responses to it are equally async. The distinction is
> important: pipelining is possible of async methods whereas it is not of
> sync methods. Thus you can't issue two queue.declares after each other
> without waiting for the first queue.declare_ok to come back, where as
> you can issue two basic.publishes straight after each other and then
> later on, the first evokes a basic.return.

The side-effect for publishing being that the channel on the server side can
still be in the process of routing the message while the client has already
moved on to the next publish command.  So if the server node dies, without
transactions or publisher confirms the client has no idea that the message
has gone poof before it got routed. Would that be a correct description?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20110324/a2eb27e8/attachment.htm>

More information about the rabbitmq-discuss mailing list