<br><div class="gmail_quote">On Sat, Jun 30, 2012 at 12:42 AM, Eric <span dir="ltr">&lt;<a href="mailto:ejarendt@gmail.com" target="_blank">ejarendt@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I thought I sent along another message, but apparently it didn&#39;t go<br>
through.  Viewing this group through the new Google Groups UI is<br>
confusing.<br>
<br></blockquote><div><br></div><div>I find it&#39;s better to avoid the Google Group, and just use the mailing list directly.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

I misunderstood the federation configuration; I see now that you<br>
declare a backing type when you declare the federated exchange, which<br>
makes sense.  I thought the backing type was based on the upstream<br>
exchange.<br>
<br>
Going back to shovel for a second... if I have two shovels running in<br>
a cluster, one on each broker, and they connect to their host broker<br>
and consume from the same mirrored queue (the queue is &#39;shared&#39; across<br>
the cluster) will they simply behave like two consumers on the same<br>
queue, and basically receive messages round-robin?  Because that would<br>
work fine for my scenario.  They&#39;ll share the workload unless one of<br>
the brokers in the cluster dies, after which one shovel would be doing<br>
all the work.<br>
<div class="HOEnZb"><div class="h5"><br></div></div></blockquote><div><br></div><div>Correct, the shovels will behave as you outlined when consuming.</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="HOEnZb"><div class="h5">
On Jun 29, 9:00 am, Eric &lt;<a href="mailto:ejare...@gmail.com">ejare...@gmail.com</a>&gt; wrote:<br>
&gt; Thanks for the reply.<br>
&gt;<br>
&gt; The odd thing about the federation plugin is that the downstream broker,<br>
&gt; which is the &#39;master&#39; conceptually in my case, has to declare its exchange<br>
&gt; type as &#39;federation&#39;, which means the actual type is based on the upstream<br>
&gt; &#39;slave&#39; exchange.  That feels strange to me, because I don&#39;t want the<br>
&gt; master to really care about the upstream exchange - it&#39;s sort of optional.<br>
&gt;  If the upstream broker is alive that&#39;s great, and I want it to forward<br>
&gt; messages along to the master.  If it&#39;s not, or isn&#39;t present when the<br>
&gt; master starts, I don&#39;t want that to be a problem.<br>
&gt;<br>
&gt; Maybe I&#39;m not understanding federation correctly?  It just struck me as odd<br>
&gt; that the master has to go declaring all of the upstream sources it expects,<br>
&gt; and the other way (with shovel) seemed more natural.<br>
&gt;<br>
&gt; I understand that the sources and destination fields accept a list for the<br>
&gt; purpose of failover.  I could configure a single shovel that consumes from<br>
&gt; either broker in the &#39;slave&#39; cluster and publishes to either broker on the<br>
&gt; master cluster, but I&#39;m worried about the shovel&#39;s host broker failing and<br>
&gt; taking the shovel down.<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; On Friday, June 29, 2012 12:31:41 AM UTC-7, Brendan Hay wrote:<br>
&gt;<br>
&gt; &gt; Hi Eric,<br>
&gt;<br>
&gt; &gt; FYI: The &#39;sources&#39; and &#39;destinations&#39; configuration fields both accept a<br>
&gt; &gt; list. The shovel plugin doesn&#39;t actually pull/push to/from all of these<br>
&gt; &gt; simultaneously, it uses them as a form of simple failover - if a connection<br>
&gt; &gt; fails, it uses the next one in the list.<br>
&gt;<br>
&gt; &gt; It sounds like for your scenario (when clustering in general), it would be<br>
&gt; &gt; easier to use the federation plugin (<br>
&gt; &gt;<a href="http://www.rabbitmq.com/federation.html" target="_blank">http://www.rabbitmq.com/federation.html</a>). When you declare a federated<br>
&gt; &gt; exchange on the downstream/master cluster, the plugin auto-magically<br>
&gt; &gt; declares queues (mirrored if configured) on the upstream/AWS cluster .. you<br>
&gt; &gt; would then bind a mirrored queue to the federated exchange on the<br>
&gt; &gt; downstream/master cluster to cause messages to be routed across the link to<br>
&gt; &gt; that queue.<br>
&gt;<br>
&gt; &gt; The plugin will then stay connected even if one of your nodes on either<br>
&gt; &gt; cluster go down .. if the whole downstream/master cluster goes away/down,<br>
&gt; &gt; then messages will pile up in the upstream/AWS queues, and be transfered<br>
&gt; &gt; once the link is re-established.<br>
&gt;<br>
&gt; &gt; Does that solve your use-case?<br>
&gt;<br>
&gt; &gt; Regards,<br>
&gt; &gt; Brendan<br>
</div></div><div class="HOEnZb"><div class="h5">_______________________________________________<br>
rabbitmq-discuss mailing list<br>
<a href="mailto:rabbitmq-discuss@lists.rabbitmq.com">rabbitmq-discuss@lists.rabbitmq.com</a><br>
<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>