<div dir="ltr">I am contemplating the use of topic exchanges along with the federation plugin to route messages between geographically separated brokers.<br><br>1) Will someone confirm my understanding of the configuration is valid?<br>
<br>In this situation there would be topic exchange named "B1.TE" "B2.TE" that would be configured within brokers "B1" and "B2" respectively. B1.TE would have B2.TE configured as an upstream exchange and B2.TE would have B1.TE configured as an upstream exchange.<div>
<div><br></div><div style>Broker B1 would have queues "B1.Q1" and "B1.Q2" configured and bound to exchange B1.TE with routing keys "B1.Q1" and "*.Q2" respectively.</div></div><div style>
<br></div><div style>Broker B2 would have queues "B2.Q1" and "B2.Q2" configured and bound to exchange B2.TE with routing keys "B2.Q1" and "*.Q2" respectively.</div><div style><br></div>
<div style>2) Assuming the answer to question #1 above is "yes, it is valid", would someone confirm my understanding of how the following messages would be routed?</div><div style><br></div><div style>A message sent to exchange B1.TE with routing key "B2.Q1" would be received, forwarded to exchange B2.TE, placed in queue B2.Q1, and then acknowledgement would be sent back to the client.</div>
<div style><br></div><div style>A message sent to exchange B1.TE with routing key "B1.Q2" would be received, a copy placed in queue B1.Q2, a copy forwarded to exchange B2.TE, placed in queue B2.Q2, and then acknowledgement would be sent back to the client.</div>
<div style><br></div><div style>A message sent to exchange B2.TE with routing key "B2.Q2" would be received, a copy placed in queue B2.Q2, a copy forwarded to exchange B1.TE, placed in queue B1.Q2, and then acknowledgement would be sent back to the client.</div>
<div style><br></div><div style>3) My understanding is that an exchange has knowledge of the routing topology of any upstream queues and therefore won't send a message upstream that wouldn't end up in a queue. Firstly, is that understanding correct? Secondly (if yes to the previous question), what type of overhead are we talking about when using this configuration with a topic exchange? </div>
<div style><br></div><div style>My worry is that the processing power required to deliver each message will increase exponentially as I add additional brokers in a "mesh" style federated topology as it seems that the routing table on each upstream exchange has to be examined for each message delivery.</div>
<div style><br></div><div style>Thank you in advance for your response and reading my long-winded email. =]</div><div style><br></div><div style>Regards,</div><div style><br></div><div style>Richard</div></div>