Beispiel für Publish/Subscribe-Messaging mit fernen Veröffentlichungspunkten
Wenn eine veröffentlichende oder subskribierende Anwendung mit einer anderen Messaging-Engine verbunden ist als ihr Ziel, werden ferne Veröffentlichungspunkte verwendet, um den Nachrichtenfluss zwischen der Messaging-Engine des Ziels und der Messaging-Engine der Anwendung zu verwalten.
Die folgende Abbildung veranschaulicht die Verwendung ferner Veröffentlichungspunkte beim Publish/Subscribe-Messaging. Nachrichten werden an einem Veröffentlichungspunkt in ME1 veröffentlicht und über einen fernen Veröffentlichungspunkt in ME1 an Veröffentlichungspunkte in ME2 und ME3 weitergeleitet. Die Nachrichten werden von Subskriptionen in ME2 und ME3 konsumiert.
Abbildung 1. Publish/Subscribe-Messaging mit fernen Veröffentlichungspunkten

Der Ablauf beim fernen Publish/Subscribe-Messaging ist wie folgt:
- Der Administrator erstellt ein Ziel für den Topicbereich im Bus. Daraufhin wird ein Veröffentlichungspunkt in jeder Messaging-Engine im Bus erstellt.
- Die subskribierenden Anwendungen registrieren Subskriptionen für ein Topic im Topicbereich in ihren lokalen Messaging-Engines. Die Messaging-Engine ME1 wird darüber informiert, dass die Messaging-Engines ME2 und ME3 an dem Topic interessiert sind.
- Die veröffentlichende Anwendung in ME1 veröffentlicht eine Nachricht für dieses Topic und diesen Topicbereich im Bus, die an die Veröffentlichungspunkte in jeder Messaging-Engine verteilt wird.
- Die fernen Veröffentlichungspunkte in ME1 stellen die Nachricht für die Übertragung an die entsprechenden Veröffentlichungspunkte in ME2 und ME3 in eine Warteschlange.
- Die Nachricht wird so schnell wie möglich an die Veröffentlichungspunkte in ME2 und ME3 gesendet. ME1 merkt sich die Nachricht so lange, bis ME2 und ME3 den Empfang der Nachricht bestätigen.
- Die subskribierenden Anwendungen konsumieren die Nachrichten über ihre Subskriptionen in ME2 und ME3.
In Abbildung 1 sind die subskribierenden Anwendungen mit Messaging-Engines verbunden, in denen auch ihre
Subskriptionen erstellt wurden.
Wenn eine subskribierende Anwendung eine permanente Subskription hat, kann die Anwendung auch
mit einer anderen Messaging-Engine als der, in der die Subskription erstellt wurde, verbunden sein.
In diesem Fall greift die subskribierende Anwendung über eine
ferne Subskription auf die Messaging-Engine zu, mit der die Anwendung verbunden ist.
In Abbildung 2 werden Nachrichten in ME1 veröffentlicht und an die permanente Subskription in ME2 weitergeleitet.
Die Nachrichten werden von ME2 über eine ferne Subskription in ME3 konsumiert.
Abbildung 2. Publish/Subscribe-Messaging mit einer fernen Subskription
In dieser Situation konsumiert
die subskribierende Anwendung B Nachrichten von ihrer Subskription genauso wie eine Anwendung, die Nachrichten fern von einem Warteschlangenpunkt konsumiert, wie es im Artikel
Beispiel für Punkt-zu-Punkt-Messaging mit fernen Warteschlangenpunkten beschrieben wird.