36.2.2. Discovery Groups

While the broadcast group defines how connector information is broadcast from a server, a discovery group defines how connector information is received from a multicast address.
A discovery group maintains a list of connector pairs - one for each broadcast by a different server. As it receives broadcasts on the multicast group address from a particular server it updates its entry in the list for that server.
If it has not received a broadcast from a particular server for a length of time it will remove that server's entry from its list.
Discovery groups are used in two places in HornetQ:
  • By cluster connections so they know what other servers in the cluster they should make connections to.
  • By messaging clients so they can discover what servers in the cluster they can connect to.
Although a discovery group will always accept broadcasts, its current list of available live and backup servers is only ever used when an initial connection is made, from then server discovery is done over the normal HornetQ connections.