Publish/Subscribe-Messaging über einen IBM MQ-Link: Beispiel

Eine Publish/Subscribe-Brücker über einen IBM MQ-Link ermöglicht Subskribenten im Service Integration Bus in WebSphere Application Server, dieselben Veröffentlichungsnachrichten zu empfangen wie die Subkribenten in einem IBM MQ-Netz. Mit dem Brokerprofil in WebSphere Application Server können die beiden gesonderten Publish/Subscribe-Domänen als gemeinsame Entität dargestellt werden.

Angenommen, es gibt die beiden Geschäfte "GolfStats Inc." und "FootballFansData Inc.", die beide Ergebnisse und Nachrichten zu verschiedenen Arten von Sportereignissen liefern. Beide bezahlen Fremdanbieter für das Sammeln von Informationen zu Sportereignissen (Golf bzw. Football) und das Veröffentlichen dieser Daten in ihren IT-Systemen. GolfStats und FootballFansData verlangen dann von ihren Kunden eine monatliche Gebühr für eine Anwendung, die auf einem Desktop-Computer ausgeführt wird und die Ergebnisse anzeigt, sobald sie verfügbar sind.

GolfStats verwendet außerdem ein eigenes IT-System für eine Website und für die Ausführung weiterer Geschäftsanwendungen. Die IT-Systeme basieren auf WebSphere Application Server und dem Service Integration Bus. FootballFansData hingegen hat keine weiteren Geschäftsanwendungen und verwendet die Messaging-Technologie von IBM MQ und für die Publish/Subscribe-Anforderungen.

Abbildung 1. Zwei gesonderte Geschäfte, die Informationen für ihre jeweilige Zielgruppe veröffentlichen
GolfStats hat einen Service Integration Bus mit einem Topicbereich. Eine Publisher-Anwendung veröffentlicht Nachrichten im Topic "sports/golf" im Topicbereich, und eine Subskribentenanwendung subskribiert das Topic "sports//.", um die entsprechenden Informationen zu erhalten. FootballFansData hat einen Warteschlangenmanager, der das Publish/Subscribe-Messaging steuert und von WebSphere Application Server als fremder Bus betrachtet wird, obwohl die zwei Netze zum gegenwärtigen Zeitpunkt nicht miteinander verbunden sind. Eine Publisher-Anwendung veröffentlicht Nachrichten im Topic "sports/football" im Warteschlangenmanager, und eine Subskribentenanwendung subskribiert das Topic "sports/#", um die entsprechenden Informationen zu erhalten.

In Abbildung 1 werden zwei separate Geschäfte gezeigt. GolfStats Inc. verwendet einen Fremdanbieter, der auf seine IT-Systeme zugreift, wenn ein Ergebnis verfügbar ist, und Informationen in einem Topicbereich unter dem Topic "sports/golf" veröffentlicht, das dann die Subskribenten erhalten, die "sports//." subskribiert haben ("//." steht in der Syntax, die von der Publish-Subscribe-Brücke verwendet wird, für alle Sportinformationen). Das Publish/Subscribe-Messaging in GolfStats Inc wird von einem Service Integration Bus gesteuert.

Analog dazu veröffentlicht ein Fremdanbieter für FootballFansData Inc Informationen im IBM MQ-Netz für das Topic "sports/football". Diese Informationen werden von einer Subskribentenanwendung des Ereignis-Brokers empfangen, die alle Informationen in "sports/#" (IBM MQ-Syntax für alle Sportinformationen) auflistet. Das Publish/Subscribe-Messaging in FootballFansData Inc wird von einem IBM MQ-Warteschlangenmanager gesteuert, der von WebSphere Application Server als fremder Bus betrachtet wird, obwohl die zwei Systeme zum gegenwärtigen Zeitpunkt nicht miteinander verbunden sind.

Jetzt fusionieren GolfStats und FootballFansData, und die neue Verwaltung möchte die vorhandenen IT-Systeme zusammenführen, um den Zielgruppen der früher gesonderten Geschäfte die Informationen zu Golf- und Football-Ereignissen zusammen zur Verfügung zu stellen. Die eine Möglichkeit ist, alle IT-Systeme von FootballFansData so zu migrieren, dass sie den Service Integration Bus verwenden. Dies würde jedoch eine erhebliche Kapitalinvestition sowie einen Upgrade des Fremdanbieter- und Kundenanwendungscodes erfordern, um eine Verbindung zum neuen System herzustellen. Eine einfachere Alternative ist, mit dem WebSphere MQ-Link und einem Brokerprofil eine Brücke zwischen den beiden System zu erstellen.

Die Unternehmen gehen wie folgt vor, um eine Brücke zwischen den beiden Systemen herzustellen:

  1. Geben Sie einen IBM MQ-Warteschlangenmanager bzw. eine Gruppe mit gemeinsamer Warteschlange (bei IBM MQ for z/OS) auf den Systemen von FootballFansData an (z. B. QM_GATEWAY), der bzw. die als Gateway für die Verbindung zum IBM MQ-Netz fungiert.
  2. Konfigurieren Sie für den Service Integration Bus von GolfStats eine Verbindung zu einem fremden Bus, damit Nachrichten zwischen dem Bus und dem IBM MQ-Netz ausgetauscht werden können.
  3. Definieren Sie ein Brokerprofil im IBM MQ-Link, der den Namen des Warteschlangenmanagers in dem IBM MQ-Netz angibt, in dem die Nachrichten veröffentlicht werden. In diesem Beispiel ist es QM_TWO.
  4. Definieren Sie unter dem Brokerprofil eine Topiczuordnung, damit Veröffentlichungen zwischen dem Service Integration Bus und dem IBM MQ-Netz fließen können. Die Zuordnung für das Topic "sports//." ist bidirektional. Auf diese Weise können alle Veröffentlichungen im Zweig "sports" der Topichierarchie übertragen werden.

Nachdem Sie diese Aktionen ausgeführt haben und der Anwendungsserver mit dem Service Integration Bus von GolfStats erneut gestartet wurde, fließen Nachrichten zwischen den beiden Systemen. Die Kunden von FootballFansData können Informationen zu Golfereignissen und die Kunden von GolfStats Informationen zu Football-Ereignissen empfangen. Die folgende Abbildung zeigt den logischen Weg einer "golf"-Nachricht, die im IT-System von GolfStats veröffentlicht und von einem Subskribenten auf dem FootballFansData-System empfangen wird.

Abbildung 2. Zwei gesonderte Geschäfte, die Veröffentlichungen austauschen.
GolfStats hat einen Service Integration Bus mit einem Topicbereich. Eine Publisher-Anwendung veröffentlicht Nachrichten im Topic "sports/golf" im Topicbereich. Die Publish/Subscribe-Brücke subskribiert die Nachrichten im Topicbereich und übergibt sie über den WebSphere MQ-Link mit WebSphere MQ-Kanälen an das FootballFansData-System, das von WebSphere Application Server als fremder Bus betrachtet wird. Der Gateway-Warteschlangenmanager übergibt die Nachrichten an Warteschlangenmanager 2, und eine Subskribentenanwendung subskribiert das Topic "sports/#", um die entsprechenden Informationen zu erhalten.

Wenn GolfStats denselben Topicbereich verwendet, um Informationen zum Topic "business/financials" für internen Gebrauch zu veröffentlichen, werden diese Nachrichten nicht an das IBM MQ-Netz von FootballFansData weitergeleitet, weil keine Topiczuordnung für dieses Topic erstellt wurde. Auf diese Weise wird sichergestellt, dass das GolfStats-Team die Empfänger dieser Nachrichten auf die Personen einschränken kann, die für den Empfang auf dem GolfStats-System berechtigt sind. Außerdem werden unnötige Nachrichtenübertragungen zwischen den beiden Systemen vermieden.


Symbol, das den Typ des Artikels anzeigt. Konzeptartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cjc0005a_
Dateiname:cjc0005a_.html