Un PSSB (partitioned stateless session bean) è un bean di sessione stateless che implementa l'interfaccia PartitionHandlerLocal e utilizza il metodo PartitionManager
per creare le partizioni dalla struttura WPF (utilità di partizione). Le caratteristiche di
runtime sono le stesse del bean di sessione stateless normale da una prospettiva del runtime.
Le funzioni speciali di questo tipo di bean includono:
- Durante l'avvio dell'applicazioni nel contenitore dei bean enterprise, il bean viene analizzato e se questo bean è un PSSB, allora vengono richiamati i metodi dell'interfaccia PartitionHandlerLocal. I metodi di implementazione dell'interfaccia possono utilizzare l'API PartitionManager
per inoltrare le richieste al coordinatore del gestore HA per creare e attivare le partizioni in base alla politica corrente.
- Durante l'attivazione dei metodi dall'implementazione client-server del PSSB, ogni richiamo del metodo client viene intercettato ed elaborato per determinare su quale partizione dell'infrastruttura server il metodo deve essere eseguito. Ad esempio, si assuma che venga dimostrato un PSSB denominato TestBean e che questo bean abbia un metodo di interfaccia remota denominato ping(String
partition). Quando il client esegue il metodo TestBean.ping(partition), il TestBean_PartitionKey.ping(partition) (una classe creata dal programmatore) elaborerà tutti gli attributi del metodo e restituirà un'unica stringa per consigliare al sottosistema WLM a quale endpoint della partizione deve essere indirizzato il metodo.
- Il PSSB ha diversi metodi per gestire le modifiche allo stato che le istanze della partizione possono rilevare durante le normali attività. Ad esempio, esiste un metodo PartitionLoadEvent(String) e PartitionUnLoadEvent(String) che verrà eseguito se l'amministratore utilizza un comando JMX o wpfadmin per spostare un endpoint della partizione da un server a un altro. In questo caso, se una partizione P001 è associata al server delle applicazioni appsvr1 e gli utenti eseguono un comando di spostamento wpfadmin che sposta la partizione P001 da
appsvr1 a appsvrN all'interno del cluster, vengono richiamati questi metodi di richiamata dei bean. Il PSSB su appsvr1 riceve una richiamata di disattivazione dal gestore HA e a sua volta il runtime dell'utilità di partizione richiama il metodo PartitionUnLoadEvent(String).
Una volta completato questo metodo, il gestore HA su appsvrN avvia il metodo di richiamata relativo all'attivazione e il runtime dell'utilità di partizione esegue un PartitionLoadEvent(String) sul PSSB.
In breve, un PSSB è un tipico bean di sessione che implementa e richiama i metodi dalla struttura dell'utilità di partizione. Tali metodi sono simili ai metodi di richiamata EJB esistenti ma hanno funzioni aggiuntive relative al partizionamento.