...
The Qpid C++ messaging broker supports broker federation, a mechanism by which large messaging networks can be built using multiple brokers. Some scenarios in which federation is useful:
- Connecting disparate locations across a wide area network. In this case full connectivity across the enterprise can be achieved while keeping local message traffic isolated to a single location.
- Departmental brokers that have a policy which controls the flow of inter-departmental message traffic.
- Scaling of capacity for expensive broker operations. High-function exchanges like the XML exchange can be replicated to scale performance.
- Co-Resident brokers Some applications benefit from having a broker co-resident with the client. This is particularly true if the client produces data that must be delivered reliably but connectivity to the consumer(s) is non-reliable. In this case, a co-resident broker provides queueing and durablilty not available in the client alone.
- Bridging disjoint IP networks. Message brokers can be configured to allow message connectivity between networks where there is no IP connectivity. For example, an isolated, private IP network can have messaging connectivity to brokers in other outside IP networks.
The qpid-route Utility
The qpid-route command line utility is provided with the Qpid broker. This utility is used to configure federated networks of brokers and to view the status and topology of networks.
qpid-route accesses the managed brokers remotely. It does not need to be invoked from the same host on which the broker is running. If network connectivity permits, an entire enterprise can be configured from a single location.
In the following sections, federation concepts will be introduced and illustrated using qpid-route.
...
Federation occurs when a link is established between two brokers and one or more routes are created within that link. A link is a transport level connection (tcp, rdma, ssl, etc.) initiated by one broker and accepted by another. The initiating broker assumes the role of client with regard to
the connection. The accepting broker annotates the connection as being for federation but otherwise treats it as a normal client connection.
A route is associated with an AMQP session established on the link connection. There may be multiple routes sharing the same link
Dynamic Routing
Static Routing
...