Strikte Nachrichtenreihenfolge mit Aktivierungsspezifikationen oder ASF-Listener-Ports, die mit WebSphere MQ Version 7.x verbunden sind
Eine strikte Nachrichtenreihenfolge kann erreicht werden, wenn MDB-Anwendungen im WebSphere MQ-Messaging-Provider implementiert werden, falls in der Anwendung keine besonderen Funktionen zur Bearbeitung ungeordnet eingehender Nachrichten codiert wurden.
In WebSphere Application Server Version 7
und höher sind Listener-Ports stabilisiert. Weitere
Informationen finden Sie im Artikel zu den stabilisierten Features. Deshalb sollten Sie die Migration Ihrer WebSphere MQ-MDB-Implementierungskonfigurationen
von Listener-Ports auf Aktivierungsspezifikationen planen. Weitere Informationen zum Konfigurieren der Aktivierungsspezifikationen für Nicht-ASF-Modus finden Sie unter Aktivierungsspezifikation für Nicht-ASF-Modus konfigurieren. Sie sollten die Migration jedoch erst dann durchführen, wenn Sie sicher sind, dass die Anwendung nicht in Anwendungsservern einer früheren Version als WebSphere Application Server Version 7 ausgeführt werden muss.
Wenn beispielsweise in einem Anwendungs-Server-Cluster einige Member Version 6.1 und andere Member eine höhere Version
haben, sollten Sie Anwendungen in diesem Cluster erst dann auf die Verwendung von Aktivierungsspezifikationen migrieren,
wenn Sie alle Anwendungsserver im Cluster auf die höhere Version migriert haben.
- Die MDB-Anwendung ist transaktionsorientiert.
- Der Rücksetzschwellenwert (BOTHRESH) in der WebSphere MQ-Warteschlange wurde auf 0 gesetzt.
- Sie verwenden WebSphere MQ Version 7.0 oder höher.
Konfiguration von WebSphere Application Server für geordnete Übermittlung
- Der WebSphere MQ-Warteschlangenmanager muss in WebSphere MQ Version 7.0 oder höher ausgeführt werden.
- Die Verbindung zum Warteschlangenmanager muss den normalen Modus des WebSphere MQ-Messaging-Providers verwenden. Lesen Sie dazu den Artikel Rules for selecting the WebSphere MQ messaging provider mode im Information Center von WebSphere MQ.
- Wenn Sie Listener-Ports verwenden, muss der Wert Maximale Anzahl Sitzungen für die Listener-Ports in WebSphere Application Server auf 1 gesetzt sein.
- Wenn Sie Aktivierungsspezifikationen verwenden, muss der Wert Maximale Anzahl Sitzungen für die Aktivierungsspezifikationen in WebSphere Application Server auf 1 gesetzt sein.
Wichtige Informationen zu dieser Konfiguration
- ASF-Listener-Ports und Aktivierungsspezifikationen von WebSphere MQ
enthalten zwei eigenständige Komponenten, die zusammen die Nachrichtenübermittlung realisieren. Diese zwei Komponenten werden
vom Warteschlangenmanager als eigenständige Anwendungen betrachtet:
- Eine Komponente erkennt die Nachrichten, wenn sie eingehen, konsumiert sie jedoch nicht. Stattdessen teilt sie sie der zweiten Komponente zu.
- Die andere Komponente ist ein Serversitzungspool, der einen Thread zuordnet, um die Nachricht innerhalb der Anwendungstransaktion zuzuordnen und an die Methode onMessage() der MDB zu übermitteln.
- Ab Version 7.0 stellt WebSphere MQ stellt ein Push-Modell für die Nachrichtenerkennung bereit, das effizienter ist als das in älteren Versionen von WebSphere MQ verwendete Abfragemodell, und ermöglicht unter normalen Betriebsbedingungen eine bessere Ordnung der Nachrichten nach Reihenfolge.
Bedingungen, unter denen Nachrichten ungeordnet übermittelt werden können
Nachrichten können bei dieser Konfiguration unter folgenden Bedingungen ungeordnet übermittelt werden:
Hinweise für eine Clusterimplementierung
- Sie können die MDB nur in einem Cluster-Member aktivieren, da der Anwendungsserver kein Tool hat, die diese Aktivierung automatisch durchführen kann.
- Sie können den Startstatus von Listener-Ports unabhängig von der Einstellung für das Startdatum einer Anwendung auf "Gestoppt" setzen.
- Sie können Anwendungen, ASF-Listener-Ports und Nachrichtenendpunkte mit MBean-Schnittstellen manuell starten und stoppen, indem Sie wsadmin-Scripts oder die Schnittstellen vom Typ com.ibm.websphere.management.AdminClient aus dem Java™-Code verwenden.