WebSphere Extended Deployment peut équilibrer de façon dynamique et active la distribution des sessions HTTP entre les serveurs d'applications.
WebSphere Application Server affecte des sessions HTTP en fonction de l'affinité du serveur d'applications. Une fois qu'une session est établie sur un serveur d'applications particulier, les demandes suivantes appartenant à cette session sont affectées au serveur d'applications possédant l'affinité de session.
A long terme, les affinités de session ont tendance à déséquilibrer la charge de session d'un cluster et, en général, les déséquilibres sont de courte durée et supportables. Cependant, vous pouvez utiliser le rééquilibrage de session pour les déséquilibres les plus courts tout en conservant les avantages des affinités de session en termes de performances.
WebSphere Extended Deployment propose le rééquilibrage de session afin d'équilibrer les sessions à l'échelle d'un cluster. Le rééquilibrage de session est une fonction utilisable dans le cadre de sessions distribuées dont le suivi est assuré à l'aide de cookies. Par défaut, les serveurs d'applications WebSphere Extended Deployment sont configurés pour les sessions dont le suivi est assuré à l'aide de cookies, mais sans sessions distribuées.
Pour configurer vos serveurs d'applications en vue de l'utilisation de sessions distribuées, voir Paramètres de l'environnement réparti. Pour des informations détaillées sur les deux options disponibles, voir Configuration de la persistance de sessions de base de données et Configuration de la réplication de mémoire à mémoire pour la fonction poste à poste (réplication de mémoire à mémoire par défaut).
La rubrique "Configuration de la réplication de mémoire à mémoire pour la fonction poste à poste (réplication de mémoire à mémoire par défaut)" décrit les étapes permettant de configurer des serveurs dans des clusters statiques, mais vous pouvez également les suivre pour configurer des serveurs dans des clusters dynamiques. Si vous configurez des clusters dynamiques, laissez le cluster dynamique en mode statique pour que les serveurs du cluster ne démarrent pas automatiquement. Une fois les paramètres de l'environnement réparti de tous les serveurs du cluster modifiés, passez en mode automatique. Si vous ne changez pas de mode, vous devez arrêter et redémarrer les serveurs qui sont déjà démarrés dans le cluster dynamique afin qu'ils appliquent les modifications apportées aux paramètres de l'environnement réparti.
Lorsqu'il devient disponible dans un cluster dynamique, un nouveau serveur n'est associé à aucune session HTTP. Cependant, les serveurs existants du cluster dynamique possèdent des sessions avec affinité attribuée.
Avec WebSphere Extended Deployment version 6.0, le rééquilibrage de session a pour objectif de réaffecter équitablement les sessions existantes entre tous les serveurs.
Le nombre de sessions affectées au nouveau serveur d'applications est déterminé à partir du nombre de sessions sur chaque serveur d'applications et la pondération de chaque serveur d'applications. La fonction de rééquilibrage de session s'exécute au niveau de chaque serveur d'applications. Chaque serveur d'applications est informé de la disponibilité de nouveaux serveurs d'applications et des pondérations et du nombre de sessions pour chaque serveur. Fort de ces valeurs, le serveur d'applications peut déterminer le nombre de sessions à déplacer du serveur d'applications actuel vers le nouveau. Le nombre de sessions à déplacer est ensuite transmis à un filtre de servlet HTTP qui est ajouté de façon dynamique lors du démarrage du serveur afin d'intercepter et de rediriger les demandes de session.
Avec WebSphere Extended Deployment version 6.0.1 et ultérieure, le rééquilibrage de session a pour objectif de réaffecter les sessions existantes pour que le nombre de sessions qui s'exécute sur chaque serveur du cluster dynamique soit proportionnel à la pondération attribuée pour les serveurs.
Le gestionnaire DWLM (dynamic workload manager) exécute la fonction de rééquilibrage de session. Il décide du nombre de sessions à déplacer et de leur nouvel emplacement à partir des connaissances qu'il possède sur l'ensemble du cluster dynamique. Le composant DWLM prend en compte l'emplacement de la session et peut lancer des déplacements de session en plus de modifier la pondération de serveurs spécifiques. Les déplacements peuvent être lancés par tous les événements gérés par DWLM, tels que le démarrage de nouveaux serveurs, de serveurs surchargés etc.
Si vous utilisez le support de sessions HTTP reposant sur ObjectGrid à la place de la gestion des sessions standard de WebSphere Application Server, le rééquilibrage de session HTTP n'est pas pris en charge.
Si vous utilisez des sessions qui sont gérées par réécriture d'URL (Uniform Resource Locator) ou ID SSL (Secure Sockets Layer), aucun rééquilibrage n'est effectué. Le rééquilibrage n'est pas non plus effectué sur les demandes HTTP POST. Les sessions ne sont pas rééquilibrées si l'accès à la session s'effectue en émettant la demande HTTP directement vers le port HTTP du serveur d'applications, sans passer par le routeur ODR. Le compteur PMI des sessions mémoire reflète les sessions mobiles. Le compteur PMI décroît sur les serveurs existants lors de déplacements de sessions et croît sur les nouveaux serveurs récemment démarrés. Cependant, la charge des nouvelles sessions est équilibrée entre les serveurs du cluster. Pour plus d'informations sur l'analyse de données PMI et les recommandations d'utilisation des sessions HTTP, consultez le centre de documentation de WebSphere Application Server Network Deployment.
Vous pouvez activer ou désactiver le rééquilibrage de session en ajustant la propriété personnalisée HttpSessionRebalanceOff dans la console d'administration. Pour plus d'informations, voir Propriétés personnalisées relatives au positionnement d'application.
Si le rééquilibrage de session est activé et que le nouveau serveur est démarré dans le cluster dynamique, les actions suivantes redistribuent les demandes de session vers le nouveau serveur :
Vous trouverez ci-après un exemple de rééquilibrage de session dans un environnement Extended Deployment version 6.0.1 ou ultérieure.
Related tasks
Création et configuration de clusters dynamiques