<div dir="ltr"><span style="font-family:arial,sans-serif;font-size:13px">Hello,</span><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">I&#39;m new to Rabbit (and AMQP!) and am trying to determine if my requirements are possible to implement in RabbitMQ.  I hope so, because I really like a lot about what I&#39;ve seen so far!</div>
<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">I have a federation of brokers (let&#39;s say two: A and B).  They are federated because they are across WAN, so I know clustering will not work.  I would like to setup worker queues so that if I submit a job to an exchange/queue, it will be processed by one and only one consumer across the federated brokers.  Ideally, it should also prefer local consumers before going to federated consumers.</div>
<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">For example:</div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">
Broker A: Workers listening on queues with routing keys X &amp; Y</div><div style="font-family:arial,sans-serif;font-size:13px">Broker B: Workers listening on queues with routing keys Y &amp; Z</div><div style="font-family:arial,sans-serif;font-size:13px">
<br></div><div style="font-family:arial,sans-serif;font-size:13px">1) Submit job with routing key X from Broker A: Should go to Consumer of X on Broker A</div><div style="font-family:arial,sans-serif;font-size:13px">2) Submit job with routing key Y from Broker A: Should go ONLY to Consumer of Y on Broker A</div>
<div style="font-family:arial,sans-serif;font-size:13px">3) Submit job with routing key Z from Broker A: Should go to Consumer of Z on Broker A</div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">
I tried this with federated direct exchanges (one link in each direction), but in case #2 above, the job will get distributed to consumers of Y on BOTH Broker A and Broker B.  Even if i set up the consumers to use the same queue name, it seems they are logically different queues since they are different brokers.</div>
<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">I&#39;d really like to find a way this will work with RabbitMQ, else I will probably need to evaluate other options...  and I don&#39;t want to do too much of that, because Rabbit looks awesome!</div>
<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">Thanks,</div><div style="font-family:arial,sans-serif;font-size:13px">Chris </div></div>