Eine Partitioned Stateless Session Bean (PSSB) ist eine Stateless-Session-Bean, die das Interface
PartitionHandlerLocal implementiert und das Interface PartitionManager verwendet, um Partitionen
aus dem WPF-Framework zu erstellen. Aus der Perspektive der Laufzeitumgebung sind die Laufzeitmerkmale dieselben wie
bei einer normalen Stateless-Session-Bean.
Die besonderen Merkmale einer PSSB sind im Folgenden erläutert:
- Während die Anwendung im Enterprise-Bean-Container gestartet wird, wird die Bean analysiert.
Wenn es sich bei dieser Bean um eine PSSB handelt, werden die Methoden des Interface PartitionHandlerLocal aufgerufen.
Die Methoden der Interface-Implementierung können die API PartitionManager verwenden, um Anforderungen den HA-Manager-Koordinator
zu übergeben, um basierend auf der aktuellen Policy Partitionen zu erstellen und zu aktivieren.
- Während der Aktivierung der Methoden vom Client an die Serverimplementierung der PSSB wird jeder Clientmethodenaufruf
abgefangen und verarbeitet, um festzustellen, für welche Partition in der Serverinfrastruktur
die Methode bestimmt ist.
Stellen Sie sich eine PSSB mit dem Namen TestBean vor, die eine Remote-Interface-Methode mit dem Namen
ping(String partition) enthält. Wenn der Client die Methode TestBean.ping(partition)
ausführt, verarbeitet TestBean_PartitionKey.ping(partition) (eine Klasse, die der Programmierer erstellt)
alle Methodenattribute und gibt eine Einzelzeichenfolge zurück, die dem WLM-Subsystem mitteilt, an welchen
Partitionsendpunkt die Methode gesendet werden soll.
- Die PSSB enthält mehrere Methoden für die Behandlung der Statusänderungen, die die Partitionsinstanzen während
normaler Aktivitäten durchlaufen können.
Beispielsweise sind die Methoden PartitionLoadEvent(String) und
PartitionUnLoadEvent(String) verfügbar, die ausgeführt werden, wenn der Administrator JMX oder den Befehl wpfadmin verwendet, um einen Partitionsendpunkt
von einem Server auf einen anderen zu verschieben. Wenn eine Partition
P001 einem Anwendungsserver appsvr1 zugeordnet ist und der Benutzer eine
wpfadmin-Operation durchführt, die die Partition P001
von appsvr1 auf appsvrN im Cluster verschiebt, werden diese Rückrufmethoden der Bean aufgerufen.
Die PSSB in appsvr1 empfängt einen Inaktivierungsrückruf vom HA manager, woraufhin die WPF-Laufzeitumgebung
die Methode PartitionUnLoadEvent(String) aufruft.
Nach erfolgreichem Abschluss dieser Methode leitet der HA manager auf appsvrN eine aktivierungsbezogene
Callback-Methode ein, und die WPF-Laufzeitumgebung führt die Methode
PartitionLoadEvent(String) für die PSSB aus.
Zusammenfassend gesagt, ist eine PSSB eine typische Session-Bean, die Methoden aus dem
WPF-Framework implementiert und aufruft. Diese Methoden gleichen in vielerlei Hinsicht
der Verarbeitung vorhandener EJB-Callback-Methoden, haben jedoch Funktionen, die sich auf die
Partitionierung beziehen und nicht auf die normalen EJB-Callback-Methoden.