Propagating Subscribers

For example, the top of the following image depicts an enterprise with three servers—A, M and B—connected by routes in a multi-hop zone. The bottom of the figure illustrates the mechanism at work within the servers to route messages from a producer client of server A, through server M, to server B and its subscriber client. Consider this sequence of events.

Procedure

  1. All three servers configure a global topic T1.
  2. At bottom right of the above figure, a client of server B creates a subscriber to T1.
  3. Server B, registers interest in T1 on behalf of the client by creating an internal subscriber object.
  4. Because a route connects servers M and B, server B propagates its interest in T1 to server M. In response, M creates an internal subscriber to T1 on behalf of server B. This subscriber ensures that M forwards (that is, delivers) messages from topic T1 to B. Server B behaves as a client of server M.
  5. Similarly, because a route connects servers A and M, server M propagates its interest in T1 to server A. In response, A creates an internal subscriber to T1 on behalf of server M. This subscriber ensures that A forwards messages from topic T1 to M. Server M behaves as a client of server A.
  6. When a producer client of server A sends a message to topic T1, A forwards it to M. M accepts the message on its topic T1, and forwards it to B. B accepts the message on its topic T1, and passes it to the client.