Dans la méthode getPartitions d'un bean PSSB (Partition Stateless Session Bean), vous affectez le même alias à plusieurs partitions afin de créer un contexte de groupe de partitions pour un ensemble de partitions.
Dans l'exemple suivant (WPFPartitionGroupingSample.ear), le nombre de groupes de partitions correspond à la moitié du nombre de partitions. Chaque groupe de partition contient deux partitions.
public PartitionDefinition[] getPartitions() { try { numOfAlias=Math.round(numOfPartitions/2.0f); partitionAlias= new String[numOfAlias]; } catch (Exception e) { …… } PartitionDefinition[] rc = new PartitionDefinition[numOfPartitions]; for (int i = 1; i <= numOfPartitions; ++i) { rc[i - 1] = ivManager.createPartitionDefinition(PartitionGrouping.PARTITION_PREFIX + padZeroToString(i + "", 6)); int k= Math.round((i-1)/2.0f-0.1f)+1; rc[i-1].setPartitionAlias(PartitionGrouping.PARTITION_ALIAS + padZeroToString(k + "", 6)); } }
Le fichier WPFPartitionGroupingSample.ear contient du code source. Le fichier D_WPFPartitionGroupingSample.ear est un fichier EAR déployé.
launchClient D_WPFPartitionGroupingSample.ear -CCBootstrapPort=9813
Le résultat apparaît sous forme du code suivant :
IBM WebSphere Application Server, Release 6.0 J2EE Application Client Tool Copyright IBM Corp., 1997-2004 WSCL0012I: Traitement des arguments de la ligne de commande. WSCL0013I: WSCL0013I: Initialisation de l'environnement pour clients d'applications J2EE. **************************************** ClientComponentImpl.initialize() **************************************** **************************************** ClientComponentImpl.start() **************************************** WSCL0035I: Initialisation de l'environnement J2EE Application Client. WSCL0014I: Appel de la classe com.ibm.websphere.wpf.grouping. du client d'application client.WPFPartitionGroupingClient L'exemple de routage via le contexte PartitionAlias comprend 10 partitions L'exemple de routage via le contexte PartitionAlias comprend 5 alias L'alias de partition regroupe différentes partitions et le routeur lance une procédure WLM pour chaque alias associé à plusieurs partitions. Cet exemple indique que le contexte d'alias doit être acheminé vers deux partitions(paire et impaire) : 1er appel : PG000008->partition=PG000008,server=clusterdevNode01/s1 2e appel : PG000008->partition=PG000008,server=clusterdevNode01/s1 3e appel : PG000008->partition=PG000008,server=clusterdevNode01/s1 1er appel de l'alias : PGALIAS000001->partitionAlias=PGALIAS000001,server=clusterdevNode 02/s3 2e appel de l'alias : PGALIAS000001->partitionAlias=PGALIAS000001,server=clusterdevNode 02/s3 3e appel de l'alias : PGALIAS000001->partitionAlias=PGALIAS000001,server=clusterdevNode 02/s3 4e appel de l'alias : PGALIAS000001->partitionAlias=PGALIAS000001,server=clusterdevNode 02/s3 5e appel de l'alias : PGALIAS000001->partitionAlias=PGALIAS000001,server=clusterdevNode 02/s3 6e appel de l'alias : PGALIAS000001->partitionAlias=PGALIAS000001,server=clusterdevNode 02/s3 1er appel : PG000006->partition=PG000006,server=clusterdevNode01/s2 2e appel : PG000006->partition=PG000006,server=clusterdevNode01/s2 3e appel : PG000006->partition=PG000006,server=clusterdevNode01/s2 1er appel : PG000010->partition=PG000010,server=clusterdevNode01/s1 2e appel : PG000010->partition=PG000010,server=clusterdevNode01/s1 3e appel : PG000010->partition=PG000010,server=clusterdevNode01/s1 1er appel de l'alias : PGALIAS000002->partitionAlias=PGALIAS000002,server=clusterdevNode 01/s2 2e appel de l'alias : PGALIAS000002->partitionAlias=PGALIAS000002,server=clusterdevNode 01/s2 3e appel de l'alias : PGALIAS000002->partitionAlias=PGALIAS000002,server=clusterdevNode 02/s3 4e appel de l'alias : PGALIAS000002->partitionAlias=PGALIAS000002,server=clusterdevNode 02/s3 5e appel de l'alias : PGALIAS000002->partitionAlias=PGALIAS000002,server=clusterdevNode 01/s2 6e appel de l'alias : PGALIAS000002->partitionAlias=PGALIAS000002,server=clusterdevNode 02/s3 1er appel : PG000001->partition=PG000001,server=clusterdevNode02/s3 2e appel : PG000001->partition=PG000001,server=clusterdevNode02/s3 3e appel : PG000001->partition=PG000001,server=clusterdevNode02/s3 1er appel : PG000002->partition=PG000002,server=clusterdevNode02/s3 2e appel : PG000002->partition=PG000002,server=clusterdevNode02/s3 3e appel : PG000002->partition=PG000002,server=clusterdevNode02/s3 1er appel de l'alias : PGALIAS000003->partitionAlias=PGALIAS000003,server=clusterdevNode 01/s2 2e appel de l'alias : PGALIAS000003->partitionAlias=PGALIAS000003,server=clusterdevNode 01/s2 3e appel de l'alias : PGALIAS000003->partitionAlias=PGALIAS000003,server=clusterdevNode 01/s2 4e appel de l'alias : PGALIAS000003->partitionAlias=PGALIAS000003,server=clusterdevNode 01/s2 5e appel de l'alias : PGALIAS000003->partitionAlias=PGALIAS000003,server=clusterdevNode 01/s2 6e appel de l'alias : PGALIAS000003->partitionAlias=PGALIAS000003,server=clusterdevNode 01/s2 1er appel : PG000004->partition=PG000004,server=clusterdevNode01/s2 2e appel : PG000004->partition=PG000004,server=clusterdevNode01/s2 3e appel : PG000004->partition=PG000004,server=clusterdevNode01/s2 1er appel : PG000007->partition=PG000007,server=clusterdevNode01/s1 2e appel : PG000007->partition=PG000007,server=clusterdevNode01/s1 3e appel : PG000007->partition=PG000007,server=clusterdevNode01/s1 1er appel de l'alias : PGALIAS000004->partitionAlias=PGALIAS000004,server=clusterdevNode 01/s1 2e appel de l'alias : PGALIAS000004->partitionAlias=PGALIAS000004,server=clusterdevNode 01/s1 3e appel de l'alias : PGALIAS000004->partitionAlias=PGALIAS000004,server=clusterdevNode 01/s1 4e appel de l'alias : PGALIAS000004->partitionAlias=PGALIAS000004,server=clusterdevNode 01/s1 5e appel de l'alias : PGALIAS000004->partitionAlias=PGALIAS000004,server=clusterdevNode 01/s1 6e appel de l'alias : PGALIAS000004->partitionAlias=PGALIAS000004,server=clusterdevNode 01/s1 1er appel : PG000003->partition=PG000003,server=clusterdevNode02/s3 2e appel : PG000003->partition=PG000003,server=clusterdevNode02/s3 2e appel : PG000003->partition=PG000003,server=clusterdevNode02/s3 1er appel : PG000005->partition=PG000005,server=clusterdevNode01/s2 2e appel : PG000005->partition=PG000005,server=clusterdevNode01/s2 3e appel : PG000005->partition=PG000005,server=clusterdevNode01/s2 1er appel d'alias : PGALIAS000005->partitionAlias=PGALIAS000005,server=clusterdevNode 01/s1 2e appel d'alias : PGALIAS000005->partitionAlias=PGALIAS000005,server=clusterdevNode 01/s1 3e appel d'alias : PGALIAS000005->partitionAlias=PGALIAS000005,server=clusterdevNode 01/s1 4e appel d'alias : PGALIAS000005->partitionAlias=PGALIAS000005,server=clusterdevNode 01/s1 5e appel d'alias : PGALIAS000005->partitionAlias=PGALIAS000005,server=clusterdevNode 01/s1 6e appel d'alias : PGALIAS000005->partitionAlias=PGALIAS000005,server=clusterdevNode 01/s1 1er appel : PG000009->partition=PG000009,server=clusterdevNode01/s1 2e appel : PG000009->partition=PG000009,server=clusterdevNode01/s1 3e appel : PG000009->partition=PG000009,server=clusterdevNode01/s1 C:\hao\xd6\bin>
Related concepts
Qu'est-ce qu'un alias de partition ?