WS-Notification: Übersicht
WS-Notification ermöglicht Web-Services, das Publish/Subscribe-Messaging-Muster zu verwenden.
Das Feature "WS-Notification" wurde in WebSphere Application Server Version 8.5.5 stabilisiert.
Sie verwenden Publish/Subscribe-Messaging, um eine Nachricht für zahlreiche Subskribenten zu veröffentlichen. In diesem Muster fügt (veröffentlicht) eine erzeugende Anwendung eine Nachricht (Ereignisbenachrichtigung), die mit einem Topic gekennzeichnet ist, das den Themenbereich der Nachricht angibt, in das Messaging-System ein. Konsumierende Anwendungen, die das fragliche Topic subskribiert und die entsprechenden Berechtigungen haben, empfangen alle eine unabhängige Kopie der Nachricht, die von der erzeugenden Anwendung veröffentlicht wurde. Alle konsumierenden Anwendungen können die Nachrichten für ein bestimmtes Topic weiter filtern, indem sie einen Nachrichteninhaltsfilter verwenden, der den XML-Nachrichteninhalt des Nachrichtenhauptteils auswertet.
Die WS-Notification-Implementierung in WebSphere Application Server unterstützt die WS-Notification-Standards, entspricht den Anforderungen des WS-I Basic Profile 1.0 und sorgt zusammen mit anderen zugehörigen Standards wie WS-Addressing für eine hohe Verfügbarkeit und Lastausgleich und WS-ReliableMessaging für eine zuverlässige Kommunikation zwischen Komponenten. einen standardisierten Ansatz, der es Web-Service-Anwendungen ermöglicht, an Publish/Subscribe-Messaging-Mustern mitzuwirken, egal ob es sich um die Empfangsbereitschaft für Benachrichtigungen über ein bestimmtes Ereignisvorkommen oder das Senden von Ereignisbenachrichtigungen an das System für andere Anwendungen oder Systemverwaltungstools handelt. Der auf offenen Standards basierende Charakter dieser Web-Service-Spezifikation bedeutet, dass Anwendungen unabhängig von den zugrunde liegenden Hardwareplattformen, Softwaresprachen und Anbieterumgebungen mit anderen Anwendungen kommunizieren können.
WS-Notification-Standards
WebSphere Application Server implementiert die Standardfamilie WS-Notification Version 1.3, die unter der Aufsicht der Organization for the Advancement of Structured Information Standards (OASIS) entwickelt wurde. Diese Standards definieren den Nachrichtenaustausch für Web-Services, um Web-Service-Anwendungen die Nutzung des Publish/Subscribe-Messaging-Beispiels zu ermöglichen.
- WS-BaseNotification Version 1.3 OASIS Standard. Dieser Standard definiert Basisrollen für Erzeuger- und Konsumentenanwendungen und die Filterung von Nachrichteninhalten mit einem Selektorausdruck.
- WS-BrokeredNotification Version 1.3 OASIS Standard. Dieser Standard erweitert den Standard "Base Notification" und definiert eine Brokerrolle.
- WS-Topics Version 1.3 OASIS Standard. Dieser Standard definiert Topicsyntaxen, die von Implementierern von "Base Notification" oder "Brokered Notification" verwendet werden können.
- Mit WS-ReliableMessaging können Web-Service-Endpunkte so konfiguriert werden, dass Web-Service-Operationen zuverlässig über eigentlich nicht zuverlässige Transporte wie HTTP aufgerufen werden. Der Standard "WS-Notification" garantiert nicht die Zuverlässig, mit der Nachrichten von Anwendungen veröffentlicht oder empfangen werden. Deshalb müssen Sie für die Gewährleistung der Zuverlässigkeit WS-Notification mit WS-ReliableMessaging kombinieren können.
- WS-Distributed Management (WS-DM) definiert spezielle Anwendungen, die WS-Notification-NotificationProducer sind, und ein Topic-Namespace-Dokument, das die Topics beschreibt, in denen diese Anwendungen Ereignisbenachrichtigungen ausgeben, um die Verwaltung einer Ressource (z. B. eines Druckers) durch einen Web-Service-Client zu ermöglichen.
Weitere Informationen finden Sie im Artikel Terminologie in WS-Notification.
Die WS-Notification-Implementierung in WebSphere Application Server
Die wichtigste Komponente dieser Implementierung ist der Notification-Broker. Diese Komponente trennt erzeugende Anwendungen, die Ereignisbenachrichtigungen in das System einbringen möchten, und konsumierende Anwendungen, die Ereignisbenachrichtigungen empfangen möchten. WebSphere Application Server stellt diesen funktionsfähigen Broker bereit, sodass Anwendungen sich auf die funktionalen Anforderungen der Geschäftsebene in Bezug auf das Senden und Empfangen von Ereignissen konzentrieren können, ohne die komplexeren Infrastrukturaspekte der WS-Notification-Spezifikationen, wie z. B. das Verwalten von Listen aktiver Subskribenten, die Syntaxanalyse und den Abgleich von Topics und Platzhaltern, die Verteilung von Ereignisbenachrichtigungen an Subskribenten und die Verwaltung des Subskriptionslebenszyklus implementieren zu müssen. Diese Trennung zwischen erzeugenden und konsumierenden Geschäftsanwendungen bedeutet, dass die Erzeuger- und Konsumentenanwendungen nicht zur selben Zeit verfügbar sein müssen, um miteinander kommunizieren zu können. Der Broker bewahrt eine Veröffentlichung so lange auf, bis der Konsument verfügbar ist.
- Eine Web-Service-Anwendung stellt über die vom WS-Notification-Servicepunkt bereitgestellten Web-Service-Endpunkte eine Verbindung zum Server her.
- Der Endpunkt übergibt diese Aufrufanforderung an den Notification-Broker, der für die Syntaxanalyse der Anforderungsinformationen verantwortlich ist und die für den Typ der empfangenen Anforderung entsprechende Aktion ausführt.
In der folgenden Abbildung sehen Sie einen Anwendungsserver, der einen Benachrichtigungsbroker (NotificationBroker) und eine Messaging-Engine enthält. In der Messaging-Engine gibt es eine permanente Subskription und einen Bustopicbereich. Zwischen dem Anwendungsserver und der Außenwelt befindet sich ein Web-Service-Endpunkt. In der Außenwelt befinden sich ein Publisher, ein Subskribent und ein Benachrichtigungskonsument. Der Publisher sendet eine Benachrichtigung an ein bestimmtes Topic, und der Subskribent sendet eine Subskriptionsanforderung (für den Konsumenten der Benachrichtigung) für dasselbe Topic. Beide Nachrichten werden vom Web-Service-Endpunkt empfangen und anschließend an den zugeordneten Broker und danach an den Topicbereich weitergeleitet. Die Details der Subskription werden als permanente Subskription gespeichert. Die empfangene Benachrichtigung wird vom Broker an den Konsumenten der Benachrichtigung weitergeleitet, der das Topic subskribiert hat.

- Version 7.0: Verwenden Sie diesen Servicetyp, wenn Sie einen JAX-WS-basierten WS-Notification-Service mit Web-Service-Servicequalitäten über Richtliniensätze zusammenstellen oder JAX-WS-Handler auf Ihren WS-Notification-Service anwenden möchten. Dies ist der empfohlene Servicetyp für neue Implementierungen. Diese WS-Notification-Option ist in WebSphere Application Server ab Version 7.0 verfügbar.
- Version 6.1: Sie verwenden diesen Servicetyp, wenn Sie einen JAX-RPC-basierten WS-Notification-Service, der die in WebSphere Application Server Version 6.1 bereitgestellte Technologie verwendet, einschließlich der Möglichkeit, JAX-RPC-Handler auf den Service anzuwenden. Diese WS-Notification-Option ist in WebSphere Application Server ab Version 6.1 verfügbar.
- NotificationBroker
- SubscriptionManager
- PublisherRegistrationManager
- NotificationBroker
- SubscriptionManager
- PublisherRegistrationManager