Federation and shovel are RabbitMQ features for connecting separate brokers — moving messages between RabbitMQ instances across locations or networks. They enable distributed messaging across data centers without clustering over unreliable links.
The need: connecting separate brokers
Clustering connects nodes on a RELIABLE, low-latency network. But sometimes you need to
connect brokers across DATA CENTERS / regions / unreliable networks:
→ clustering is UNSUITABLE for high-latency/unreliable links (it needs tight coupling)
→ FEDERATION and SHOVEL link separate brokers loosely (good for WAN/geo-distribution)
