<div>It&#39;s not completely invisible, but it&#39;s a pretty good solution all in all.� </div><div>�</div><div>Does it suit the target use-case?</div><div>�</div><div>-Steven<br><br></div><div class="gmail_quote">On 28 March 2011 17:50, Matthew Sackman <span dir="ltr">&lt;<a href="mailto:matthew@rabbitmq.com">matthew@rabbitmq.com</a>&gt;</span> wrote:<br>
<blockquote style="margin: 0px 0px 0px 0.8ex; padding-left: 1ex; border-left-color: rgb(204, 204, 204); border-left-width: 1px; border-left-style: solid;" class="gmail_quote">Hi Bruce,<br>
<div><div></div><div class="h5"><br>
On Fri, Mar 25, 2011 at 12:05:46PM +0000, bruce bushby wrote:<br>
&gt; I was wondering what others are doing with regards to &quot;queuing&quot; local<br>
&gt; messages for deliver when the network is available.<br>
&gt;<br>
&gt; From my limited experience playing to &quot;rabbitmq-c client&quot; and Python &quot;pika&quot;,<br>
&gt; their focus is the ability to deliver a message immediately and report an<br>
&gt; error if they cannot contact the server.<br>
&gt;<br>
&gt; Implementing messaging from a M2M platform, there will be times when there<br>
&gt; is no communication between the client and the server...but the application<br>
&gt; may still want to submit messages which should be queued until such time as<br>
&gt; the &quot;local queue&quot; so to speak can contact the server and delivery the<br>
&gt; messages.<br>
&gt;<br>
&gt; In summary, leaving the &quot;retry/retransmission&quot; of message to the<br>
&gt; messaging infrastructure...rather then have the application monitor/poll<br>
&gt; connectivity to the server.<br>
&gt;<br>
&gt; Is something like this possible?<br>
<br>
</div></div>Yes. What we recommend is that you have Rabbit installed locally, and<br>
then configure it with the shovel plugin which will periodically try to<br>
connect to the &quot;downstream&quot; Rabbit and send the messages out. One nice<br>
way to configure this is to have the same exchange name on the local and<br>
remote broker, but on the local, it&#39;s a fanout. On the remote it can be<br>
whatever you need it to be. Then, the shovel, local, can just create a<br>
single queue and catch everything sent to the local exchange. When it<br>
connects to the downstream remote broker, it&#39;ll republish the msgs to<br>
the same exchange name, but because the type of the exchange there can<br>
be different, all sorts of other routing decisions can take place as<br>
needed. I.e. it ensures that the local broker topology can be as simple<br>
as possible (one exchange, one queue, one shovel).<br>
<br>
Matthew<br>
_______________________________________________<br>
rabbitmq-discuss mailing list<br>
<a href="mailto:rabbitmq-discuss@lists.rabbitmq.com">rabbitmq-discuss@lists.rabbitmq.com</a><br>
<div><div></div><div class="h5"><a href="https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss" target="_blank">https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss</a><br>
</div></div></blockquote></div><br>