Examples of Message Propagation
Example 1
1. A message on a given channel is published to Realm F in Zone B.
2. Servers D and E in the same zone have registered interest in the channel, so Server F forwards the message to these servers.
3. Realm E has a local subscriber, so server E delivers the message to the local subscriber. Realm E has no static joins so will not forward the message any further.
4. Realm D has a static join to Realm B. It will forward this message over the static join to Realm B.
5. Realm B receives the message through a static join and therefore forwards the message to all members of its own zone that have registered interest.
6. Realm A has registered interest as it has a local subscriber. It therefore receives this message and delivers it to the local subscriber. There are no other realms with interest so it does not forward the message further.
Example 2
1. A message is published to a channel on Realm I in Zone C.
2. Realm I forwards the message to all realms in the same zone where interest has been registered (Realm H, Realm G), as it is the initial receiver of the message.
3. Realm H forwards the received message to its subscriber. Server H has no statically configured joins so does not forward the message any further.
4. Realm G receives the message and forwards it over the static joins to Realm C in Zone A and Realm D in Zone B.
5. Realm C receives the message and forwards it to all members in Zone A that have interest.
6. Realm A and Realm B deliver the message to their subscribers.
7. Realm D receives the message and forwards it to all members of Zone B that have interest. Therefore it sends the message to Realm F. Realm E has no interest and therefore it does not forward the message to this server.
8. Realm F delivers the message to its subscriber.