Dieser Artikel beschreibt das WPF-Programmiermuster in WebSphere Extended Deployment for z/OS Version 6.0.1.
Da WPF-WLM-IIOP-Routing (Internet Inter-ORB Protocol in WebSphere Extended Deployment for z/OS Version 6.0.1 nicht unterstützt wird, müssen die Anwendungen ihr Partitions-Routing mit der JMS-Technologie (Java Message Service) oder anderen Mechanismen handhaben.
Der JMS-basierte Routing-Mechanismus ist in der folgenden Abbildung veranschaulicht. In der Abbildung werden zwei Anforderungen gezeigt - Anforderung 1 und Anforderung 2. Beachten Sie, dass jede Anforderung an ein/eine für Partitions-Routing designierte/s JMS-Topic/-Warteschlange gesendet werden muss. Das JMS-Topic bzw. die JMS-Warteschlange muss die Anforderung an die Zielpartition weiterleiten, die die Anforderung für die Verarbeitung vorbereitet und die Antwort an ein definiertes JMS-Topic bzw. eine definierte JMS-Warteschlange für Routing-Antworten sendet. Obwohl die Ausführungsschritte dieselben sind, ist die Reihenfolge der Anforderungsausführung nicht garantiert, da viele Faktoren von der Ausführung abhängig sind, z. B. die Maschinenposition, die Serverleistung und Ihre Netzkonfiguration.
Die Anforderungsrouten für die Anforderung 1 (1-1.3) und die Anforderung 2 (2-2.3) sind in der folgenden Abbildung gezeigt. Sie führen dazu, dass der Anwendungsclient Antworten (3) erhält.
Die folgenden Schritte beschreiben die Route der Anforderung 1. Dieselbe Route wird für Anforderung 2 und alle anderen Anforderungen verwendet. Die einzelnen Anforderungsausführungen sind unabhängig voneinander, und die Reihenfolge, in der sie empfangen werden, ist nicht garantiert.
Anwendungspartitionen in Cluster-Membern sind immer an das/die zugehörige JMS-Topic/-Warteschlange gebunden und für diese empfangsbereit (mit AsyncBean). In Partition 1 (P1) empfangen die Anwendungspartitionen JMS-Nachrichten beispielsweise, wenn neue Nachrichten für das/die zugehörige JMS-Topic/-Warteschlange ankommen.
Wie herkömmliche WPF-fähige Anwendungen gibt es eine Partitioned Stateless Session Bean (PSSB), die das Interface PartitionHandlerLocal implementiert. Die Methoden partitionLoadEvent(String Partitionsname) und partitionUnloadEvent(String Partitionsname) des Interface PartitionHandlerLocal sind die Punkte, an denen eine Bindung zwischen einer Partition und einem/einer JMS-Topic/-Warteschlange hergestellt und aufgehoben wird.
partitionLoadEvent(String Partitionsname) - Die Partition mit dem Namen, der der Variablen Partitionsname entspricht, wird auf dem System aktiviert. Starten Sie den Worker-Thread für die Partition (oder den AsyncBean-Worker-Thread), der an das/die JMS-Topic/-Warteschlange für die angegebene Partition gebunden ist. Sie müssen eine Referenz auf den Worker-Thread der Partition verwalten, um den Thread zu stoppen bzw. löschen zu können, wenn das entsprechende Ereignis partitionUnloadEvent eintritt.
partitionUnloadEvent(String Partitionsname) - Die Partition mit dem Namen, der der Variablen Partitionsname entspricht, wird auf dem System inaktiviert. Die Bindung des Partitions-Worker-Threads an das/die JMS-Topic/-Warteschlange für die angegebene Partition wird aufgehoben und der Partitions-Worker-Thread wird gestoppt bzw. gelöscht.
Related concepts
Einschränkungen in WPF unter z/OS