Thanks for your reply, Alexis. I guess what you said I can see in a non pub/sub (using fanout) scenario (persistent, durable, ack)... Am I understanding your response right? I've searched extensively for this answer, but I found there is no out of the box solution in RabbitMQ (and most of other queue solutions), so I'm trying to find good practices to achieve it -- pub/sub technique to "guarantee" messages are delivered to all subscribers. I'm trying to avoid the idea of building a custom lightweight middleware (although my diagram represents one in some sense).<div><br></div><div>I couldn't find the post you mentioned -- would you mind pointing it to me, please?</div><div><br></div><div>Thanks again.</div><div><br></div><div>Francisco<br><br>On Tuesday, 25 September 2012 13:10:47 UTC-3, Alexis Richardson wrote:<blockquote class="gmail_quote" style="margin: 0;margin-left: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;">On Tue, Sep 25, 2012 at 1:10 PM, Francisco Aguiar Zanfranceschi
<br><<a href="javascript:" target="_blank" gdf-obfuscated-mailto="0hI3pFdMd0EJ">zanfra...@gmail.com</a>> wrote:
<br>> I'd like to say that's probably easier if I ask what's the best way to
<br>> guarantee all subscribers receive all messages even when they go offline
<br>> using RabbitMQ. I imagine all of us had that challenge or will have it
<br>> sooner or later. I'm sorry to kind of bump this discussion.
<br>
<br>You want to make sure that each consumer (subscribed client) can have
<br>its messages held in a queue, while it is offline, so that it can get
<br>the messages when it reconnects. This is achievable using the pattern
<br>I linked to in my previous post on this thread.
<br>
<br>Then, you need to make sure that when it does connect, the messages
<br>get to the consumer and only after you know that happened, is the
<br>message deleted from the queue. This is achievable by using
<br>acknowledgement.
<br>
<br>Does this answer your question?
<br>
<br>It is also important to understand the failure scenarios clearly,
<br>whenever words like "guarantee" are bandied about ;-)
<br></blockquote></div>