<div dir="ltr">I would vote for deduplication where the ring buffer size is set by configuration.<div><br></div><div>Effectively that is what we do in a little app that runs on each retail instance.</div><div><br></div><div>
Michael</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Jan 16, 2014 at 6:09 AM, Simon MacMullen <span dir="ltr"><<a href="mailto:simon@rabbitmq.com" target="_blank">simon@rabbitmq.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On 15/01/14 19:19, Josh West wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I am experimenting with different architectures and it seems that in<br>
order to prevent message duplications, I'll have to go with a complete<br>
graph and max-hops set to 1 -- or in other words, each broker will have<br>
to directly federate with the other 100-200 brokers.<br>
</blockquote>
<br></div>
Yeah, there isn't any cycle detection in federated exchanges (yet). I keep wondering about adding it, but the trouble is that I suspect people really want deduplication rather than cycle detection. So that means either deduplication buffers that can get arbitrarily large (when do you drop message IDs from them) or some sort of routing algorithm to automatically remove duplicate routes from the federated broker set (which requires a global view at least, and is also probably quite complicated and error prone).<br>

<br>
So I don't know of any good solutions for large federations other than max-hops = 1.<br>
<br>
Cheers, Simon<span class="HOEnZb"><font color="#888888"><br>
<br>
-- <br>
Simon MacMullen<br>
RabbitMQ, Pivotal</font></span><div class="HOEnZb"><div class="h5"><br>
______________________________<u></u>_________________<br>
rabbitmq-discuss mailing list<br>
<a href="mailto:rabbitmq-discuss@lists.rabbitmq.com" target="_blank">rabbitmq-discuss@lists.<u></u>rabbitmq.com</a><br>
<a href="https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss" target="_blank">https://lists.rabbitmq.com/<u></u>cgi-bin/mailman/listinfo/<u></u>rabbitmq-discuss</a><br>
</div></div></blockquote></div><br></div>