A discovery agent is a mechanism that advertises available brokers to clients and other brokers. When a client, or broker, using a discovery URI starts up it will look for any brokers that are available using the specified discovery agent. The clients will update their lists periodically using the same mechanism.
How a discover agent learns about the available brokers varies between agents. Some agents
use a static list, some use a third party registry, and some rely on the brokers to provide
the information. For discovery agents that rely on the brokers for information, it is
necessary to enable the discovery agent in the message broker configuration. For example, to
enable the multicast discovery agent on an Openwire endpoint, you edit the relevant
transportConnector
element as shown in
Example 2.4.
Example 2.4. Enabling a Discovery Agent on a Broker
<transportConnectors> <transportConnector name="openwire" uri="tcp://localhost:61716" discoveryUri="multicast://default" /> </transportConnectors>
Where the discoveryUri
attribute on the
transportConnector
element is initialized to
multicast://default
.
![]() | Tip |
---|---|
If a broker uses multiple transport connectors, you need to configure each transport connector to use a discovery agent individually. This means that different connectors can use different discovery mechanisms or that one or more of the connectors can be indiscoverable. |
Fuse Message Broker currently supports the following discovery agents: