EMS Topic Prefix

Channels isolate message streams. However, the EMS server merges message streams that share a topic name. Configuring a distinct topic prefix on each EMS channel can prevent crosstalk among channels through the EMS server.

The first diagram illustrates the undesirable crosstalk effect. The intent is that channels B and D carry separate message streams, isolating the green applications on channel B from the yellow applications on channel D. However, because applications on the two channels use the same topic name, the EMS server forwards messages on both channels, resulting in crosstalk. (The effect is the same even in the absence of EMS applications that use the shared topic name.)

To prevent crosstalk, the eFTL administrator can supply a distinct prefix string for each EMS channel. Each EMS channel prepends its prefix string to EMS topic names at each publish and subscribe operation. The second diagram illustrates the result: each channel communicates with a separate topic in the EMS server, effectively isolating their message streams.

Topic prefix strings are transparent to eFTL client applications. That is, applications on the eFTL side still publish and subscribe using a topic name without the prefix: the channel prepends it only on the EMS side.

However, topic prefix strings are not transparent to EMS client applications. That is, applications on the EMS side must explicitly include the prefix when they publish and subscribe.

Furthermore, EMS administrators must explicitly allow these prefix strings in topic names.