La fonction de partitionnement (WPF) prend désormais en charge le concept de beans entity option A dans le cluster. Ces performances supplémentaires sont obtenues lorsque le développeur tire parti du modèle de programmation fourni avec WPF et, dans certains cas, lorsqu'il utilise le support Work Manager disponible dans WebSphere Application Server version 6.0.2.
Le service WPF requiert un bean session sans état supplémentaire à inclure dans le fichier JAR EJB de l'application J2EE. Ce bean session s'appelle le bean PSSB (Partitioned Stateless Session Bean). Lorsque l'application traite la séquence de démarrage lors de l'initialisation du serveur d'applications pour le module d'EJB, 1 à N partitions différentes sont créées. Chaque partition représente un noeud final unique au sein du cluster. En résumé, un bean PSSB (Partitioned Stateless Session Bean) est simplement un bean session sans état standard qui utilise l'interface PartitionManager de la structure WPF pour créer des partitions spécifiques lors du lancement du bean. Outre l'interface standard SessionBean, il implémente l'interface PartitionHandlerLocal (décrite ultérieurement) pour traiter les événements relatifs au cycle de vie des partitions.
Les services de prise en charge WPF permettent à un bean PSSB de créer des partitions. Chaque partition correspond simplement à un noeud final, auquel le client d'EJB peut directement accéder. Dans cet exemple, supposons que le bean PSSB (Partitioned Stateless Session Bean) PSSB1 soit inclus dans l'application J2EE et qu'il crée les partitions Partition 1, Partition 2, Partition 3 et Partition 4 au démarrage. Le schéma de gestion des charges d'EJB apparaît sous la forme suivante lorsque l'application J2EE partitionnée est installée (schéma simplifié pour mieux distinguer les partitions) :
Le schéma ci-dessus représente un client d'EJB qui exécute deux fois la même méthode ping du bean PSSB1. Pour chaque invocation, le premier paramètre comporte une valeur "chaîne" différente fournie sous la forme de l'état de la méthode. Les sections ultérieures du présent document décrivent de manière plus détaillée la procédure de mappage mais ici, la valeur du premier paramètre est simplement une clé utilisée par WLM pour acheminer la demande vers une partition donnée (noeud final) au sein du cluster. Au démarrage du cluster, les partitions Partition1, Partition2, Partition3 et Partition4 sont créées lorsque l'application J2EE partitionnée est lancée et que l'instance home du bean PSSB1 est instanciée. Les partitions créées ne sont pas des serveurs ni des machines virtuelles Java mais chacune possède un cycle de vie comparable à celui d'une instance d'EJB standard lors de son instanciation au sein d'un conteneur d'EJB. Une partition peut être représentée sous la forme d'un noeud final adressable ou routable dans l'infrastructure WLM.
Dans le premier cas, le client d'EJB utilise l'interface éloignée du bean PSSB1 via l'interface JNDI, puis exécute la première méthode ping(...)avec le premier paramètre définissant Partition 1. Avec le composant WebSphere Extended Deployment, les programmeurs peuvent indiquer à l'environnement d'exécution comment traiter chaque paramètre d'invocation de la méthode et acheminer chaque appel vers une partition spécifique, en fonction de l'état de l'appel de méthode.
Pour les équipes de programmation, le défi à relever lors de l'implémentation de cette technologie est de regrouper des demandes avec un état de méthode donné sur un serveur d'applications spécifique doté d'un accès exclusif à certaines ressources. Le programmeur dispose d'outils supplémentaires lors de l'activation de la partition pour savoir quand et où une partition spécifique est chargée et déchargée. Ces informations lui permettent d'allouer toutes les données d'une partition spécifique dans une même application. En outre, l'administrateur peut choisir d'effectuer le traitement à l'emplacement de son choix au sein du cluster. En effet, la partition peut être déplacée à tout moment.
Related concepts
Partitionnement de la charge de travail via des EJB