Vidéo : Configure session cache management with Liberty and WebSphere eXtreme Scale

Cette retranscription est celle de la vidéo "Configure session cache management with Liberty and WebSphere eXtreme Scale", qui explique comment améliorer les performances de vos applications en déchargeant votre serveur d'applications et les processus d'accès aux données en cours vers une mémoire cache interne grâce à la gestion de cache de session avec le profil Liberty et WebSphere eXtreme Scale. Cette retranscription est le storyboard de la vidéo. La section Audio décrit la narration et les légendes. La section Action à l'écran décrit le contenu affiché dans la vidéo.

Vidéo Configure session cache management with Liberty and WebSphere eXtreme Scale

Tableau 1. Introduction. Description des avantages de la gestion de session avec Liberty et WebSphere eXtreme Scale.
Scène Audio Action à l'écran
1 La mise en cache de sessions dans vos applications est l'une des configurations les plus avantageuses et faciles à mettre en oeuvre pour améliorer les performances et la disponibilité de vos applications Web. Si vous disposez d'un serveur d'application, stockez vos informations dans les sessions, puis déchargez votre processus en cours dans une mémoire cache interne afin de permettre à vos applications de s'exécuter à des vitesses extrêmement élevées. Cette vidéo va vous aider à effectuer cela en vous expliquant comment configurer rapidement et facilement la gestion de session à l'aide de Liberty et de WebSphere eXtreme Scale.

Liberty est un conteneur d'applications Web Java simple et léger que les développeurs peuvent utiliser pour développer, tester et déployer facilement des applications.

Affichage du titre de la vidéo, "HTTP Session Failover for WebSphere Liberty leveraging WebSphere eXtreme Scale".
2 WebSphere eXtreme Scale permet le stockage de données en mémoire distribuées qui sont répliquées sur différentes machines. Affichage d'avis et de clauses de protection IBM Corporation.
3 Cette vidéo comporte une présentation de la mise en cache de session avec eXtreme Scale. Elle inclut également une procédure rapide pour le téléchargement de Liberty et de WebSphere eXtreme Scale pour les développeurs. Vous apprendrez également comment configurer WebSphere eXtreme Scale dans Liberty. Enfin, un exemple d'application Web est fourni pour illustrer un basculement de session HTTP vers une grille de données en mémoire qui est hébergée par WebSphere eXtreme Scale. Affichage du contenu de la vidéo :
Show Quick Demo, Set-Up, and Sample of Liberty with WXS

Overview of Session and Data Caching in WXS

Quick Steps to Download Liberty & WXS

How to Configure WXS in Liberty

Sample Web Application demonstrating HTTP Session Failover to an In-Memory Datagrid
4 Pourquoi la persistence de session HTTP est-elle importante ? Sans persistence de session HTTP, vous perdez les données de session en cas de défaillance ou de non réponse d'une instance d'application. Par exemple, dans un scénario de détaillant où un utilisateur ajoute des éléments dans panier d'achat, cet utilisateur devra probablement se reconnecter et recréer sa liste d'achats si l'application est défaillante ou si le basculement de session n'est pas activé. Ce type d'expérience n'est généralement pas très apprécié de l'utilisateur.

Les développeurs disposent de 3 options pour conserver les données de session HTTP :

Première option : les développeurs peuvent stocker les sessions en local dans l'espace mémoire du serveur d'application, mais les autres instances de serveur d'applications ne partageront pas la session utilisateur commune aux applications Web. Si l'instance est défaillante, la session est perdue et l'expérience utilisateur est loin d'être satisfaisante.

Deuxième option : les développeurs peuvent conserver les sessions dans une base de données relationnelle qui est partagée entre les instances, mais l'architecture des bases de données relationnelles présente des problèmes d'évolutivité inhérents et la lecture ou l'écriture sur un disque est plus lente que dans une grille de données en mémoire.

Dans la troisième option (la meilleure) qui est présentée dans cette vidéo, Liberty utilise un moteur de persistence partagé pour stocker les données de session HTTP dans la mémoire d'une architecture élastique et évolutive appelée WebSphere eXtreme Scale. L'utilisation de Liberty avec WebSphere eXtreme Scale permet à au moins deux instances de profil Liberty indépendantes de partager une session utilisateur commune pour les applications Web. Lorsque une instance est défaillante, les autres instances peuvent continuer à traiter des demandes d'utilisateurs comme si aucun incident ne s'était produit.

Si la priorité est de maintenir la haute disponibilité de la session HTTP, utilisez WebSphere eXtreme Scale. Même en cas de défaillance d'une instance d'exécution, la session utilisateur est maintenue. Le client est ignorant de la défaillance ou de l'opération de maintenance, ce qui permet une expérience client pertinente sans interruption ni perte de données.

Affichage des informations sur la reprise de session HTTP :
Hands-On Demo: Session Cache

HTTP Session Failover for Liberty

Customer has an enterprise web application on Liberty, but they want
to maintain HTTP high availability, so they use WebSphere eXtreme
Scale to store session data.
5 L'utilisation de WebSphere eXtreme Scale avec Liberty présente plusieurs avantages pour les développeurs :
  • Accès aux données réparties pour une haute disponibilité
  • Accès en mémoire avec extraction rapide
  • Evolutivité reposant sur des méthodes traditionnelles comme les bases de données relationnelles ou la réplication de session de mémoire à mémoire
  • Accès distant pour éliminer les points de défaillance unique
  • Avantage d'une configuration rapide dans un environnement Liberty
Affichage des informations sur la mise en cache de données Liberty :
Liberty Data Caching with WXS

Supports distributed caching scenarios for web and mobile applications.

Store key and value objects in memory for fast access.

Provides linear scalability, predictable performance, and fault tolerance of the web application's data requirements.
Replicates data so that cache components may be restarted without data loss or performance penalty.

Caching is an example of a composable element that can be used to build applications quickly.
Tableau 2. Démonstration de l'installation de Liberty et de WebSphere eXtreme Scale pour Developers Liberty. Affichage des commandes et des modifications de server.xml.
Scène Audio Action à l'écran
6 Pour essayer cette fonctionnalité, vous pouvez installer rapidement Liberty et WebSphere eXtreme Scale for Developers Liberty sur votre machine de développement :
  1. Accédez à WASdev.net.
  2. Téléchargez Liberty.
  3. Téléchargez le profil WebSphere eXtreme Scale for Developers Liberty.
  4. Installez les fichiers JAR dans le répertoire "hands on", qui est le répertoire utilisé en exemple dans cette démonstration.
Affichage des étapes :
  1. Accédez au site Web de WASdev.
  2. Sélectionnez Want to try the Beta?
  3. Dans Liberty Repository, sélectionnez WebSphere eXtreme Scale for Developers Liberty.
  4. Installez les fichiers JAR files dans le répertoire c:\hands-on>.
7 Pour démontrer les fonctionnalités de WebSphere eXtreme Scale en tant que grille de données de session HTTP distante,vous allez voir un exemple d'application (de l'URL affichée) qui est déployée en local dans le répertoire dropin des instances Web Liberty, dans lequel des objets de session sont placés dans une grille de données et extraits de celle-ci. Affichage des illustrations de l'exemple de session HTTP de WebSphere eXtreme Scale et de l'URL http://ibm.co/1umQ7iy.
8 Vous allez à apprendre à configurer des instances Liberty qui font office de deux instances Web Liberty qui sont des clients dans une grille de données WebSphere eXtreme Scale.

Vous allez configurer un serveur WebSphere eXtreme Scale en tant que magasin de session HTTP s'exécutant sur une machine JVM Liberty distincte.

Enfin, vous allez configurer les deux instances Web Liberty pour le stockage de données de session HTTP dans la grille de données d'un conteneur WebSphere eXtreme Scale.

Affichage des informations sur la reprise de session HTTP :
Hands-On Demo: Session Cache

HTTP Session Failover for Liberty

Customer has an enterprise web application on Liberty, but they want
to maintain HTTP high availability, so they use WebSphere eXtreme
Scale to store session data.

Un graphique affiche ServerA et ServerB dans Liberty connectés à un cache session.

Tableau 3. Démonstration de la configuration Liberty pour une connexion à la grille de données. Affichage de la configuration de serveur et test dans un navigateur.
Scène Audio Action à l'écran
9 Vous allez maintenant apprendre à configurer Liberty pour la connexion à la grille de données. En installant WebSphere eXtreme Scale avec Liberty, vous bénéficiez d'un accès à des fonctions que vous pouvez utiliser pour gérer les applications de session HTTP qui sont installées dans Liberty.

Pour l'instance Liberty WXS_Session_Server disante, la fonction serveur doit être définie. Cette fonction contient les fonctionnalités permettant d'exécuter un serveur eXtreme Scale, ce qui signifie que le catalogue et le conteneur eXtreme Scale sont en cours d'exécution. Ajoutez la fonction de serveur lorsque vous voulez exécuter un serveur de catalogue dans Liberty ou lorsque vous voulez déployer une application de grille de données dans Liberty.

La fonction webGrid doit héberger une grille de données de gestion de session dans l'instance Liberty WXS_Session_Server. Un serveur Liberty peut héberger une grille de données qui place en mémoire cache puis réplique les données de session HTTP pour la tolérance aux pannes des applications.

Utilisez la fonction webApp pour activer la gestion de session pour les instances Liberty ServerA et ServerB. La fonction webApp contient la fonction d'extension de l'application dans Liberty. Ajoutez la fonction webApp lorsque vous voulez répliquer les données de session HTTP pour la tolérance aux pannes. Pensez à définir catalogHostPort sur l'hôte et le port de l'instance Liberty WXS_Session Server.

Affichage des informations sur la configuration d'un fichier Liberty server.xml pour l'exécution de WXS :

Cette fonction contient les fonctionnalités permettant d'exécuter un serveur eXtreme Scale, aussi bien le catalogue que le conteneur.

<feature>eXtremeScale.server-1.1</feature>
<xsServer isCatalog="true"/>

Un serveur Liberty peut héberger une grille de données qui place en mémoire cache les données pour que les applications répliquent les données de session HTTP pour la tolérance aux pannes.

<feature>eXtremeScale.webGrid-1.1</feature>
<xsWebGrid objectGridName="session" catalogHostPort="remoteHost:2609" securityEnabled="false"/>

La fonction webApp contient la fonction d'extension de l'application dans Liberty. Ajoutez la fonction webApp lorsque vous voulez répliquer les données de session HTTP pour la tolérance aux pannes.

<feature>eXtremeScale.webApp-1.1</feature>
<httpSession idReuse="true"/>
<xsWebGrid objectGridName="session" catalogHostPort="localhost:2609" securityEnabled="false"/>
10 L'application de session en exemple est maintenant lancée sur les instances ServerA et ServerB.

Vérifiez maintenant que l'attribut de session nommé Loc dans l'instance ServerA est vide.

Vérifiez également que ce même attribut est également vide pour l'instance ServerB.

Affichage d'un navigateur ouvert sur l'adresse localhost:9080/HttpSessionWAR/ et d'un navigateur ouvert sur l'adresse localhost:9081/HttpSessionWAR/. Les deux navigateurs affichent l'exemple de session HTTP WebSphere eXtreme Scale sans aucune valeur d'attribut définie.

Dans le navigateur ouvert sur l'adresse localhost:9080/HttpSessionWAR/, Loc est saisi pour Attribute dans Getting an attribute et un clic est effectué sur Get Attribute. Le navigateur affiche Welcome back. Session attribute retrieved. avec l'attribut Loc défini sur null. Un clic est ensuite effectué sur Main Page pour revenir à la page précédente.

Affichage de ces mêmes étapes dans le navigateur ouvert à l'adresse localhost:9081/HttpSessionWAR/.

11 Indiquez maintenant la valeur NC comme attribut de session Loc dans la grille de données via l'application de l'instance ServerA, puis vérifiez qu'elle a été définie.

Passons maintenant à l'application de session de l'instance ServerB et à l'extraction de l'attribut de session Loc de la grille de données.

Dans le navigateur ouvert sur l'adresse localhost:9080/HttpSessionWAR/, saisie de la valeur Loc pour Attribute et de la valeur NC pour Value dans Setting an attribute, puis clic sur Set Attribute. Le navigateur affiche Welcome back. Session attribute set. avec l'attribut Loc défini sur NC. Un clic est ensuite effectué sur Main Page pour revenir à la page précédente. Enfin, application d'un clic sur Get Attribute, affichage de l'attribut Loc défini sur NC, puis clic sur Main Page pour revenir à la page précédente.

Affichage du navigateur ouvert à l'adresse localhost:9081/HttpSessionWAR/ : clic sur Get Attribute et affichage de l'attribut Loc défini sur NC. Un clic est ensuite effectué sur Main Page pour revenir à la page précédente.

12 Vous pouvez à présent tester cette configuration par la simulation d'une indisponibilité non prévue sur l'instance ServerA, en arrêtant l'instance Liberty pour ServerA et en vérifiant que l'instance ServerB peut toujours extraire l'attribut de session Loc du cache de session de la grille de données. Affichage des informations sur la reprise de session HTTP :
Hands-On Demo: Session Cache

HTTP Session Failover for Liberty

Demonstration of Server failure but Customer Experience is maintained
and Session Persist through the entire transaction.

Un graphique affiche les instances ServerA et ServerB dans Liberty. L'instance ServerA est barrée d'une croix rouge et l'instance ServerB est connectée à un cache de session.

13 L'instance ServerA est toujours en cours d'exécution. Mais l'instance Liberty Server va être arrêtée manuellement à partir de la ligne de commande.

Passons maintenant au navigateur qui hébergeait la session ServerA et actualisons la page afin de voir l'instance Liberty indisponible.

Affichage d'un navigateur ouvert à l'adresse localhost:9080/HttpSessionWAR/. Affichage également de la saisie d'une commande pour arrêter l'instance ServerA en ligne de commande dans C:\hands-in\wlp\bin:
server stop ServerA

Affichage de l'opération d'actualisation du navigateur ouvert sur l'adresse localhost:9080/HttpSessionWAR/. Le message This webpage is not available s'affiche.

14 A présent que l'instance Server A est arrêtée, vous pouvez vérifier que l'instance ServerB peut toujours détecter les données de session dans la grille de données. Pour cela, définissez l'attribut de session Loc sur la valeur MD. Affichage du navigateur ouvert à l'adresse localhost:9081/HttpSessionWAR/, clic sur Get Attribute et définition de l'attribut Loc sur NC. Un clic est ensuite effectué sur Main Page pour revenir à la page précédente.

Saisie de Loc pour Attribute et de MD pour Value dans Setting an attribute , puis clic sur Set Attribute. Le navigateur affiche Welcome back. Session attribute set. avec l'attribut Loc défini sur MD. Un clic est ensuite effectué sur Main Page pour revenir à la page précédente. Enfin, clic sur Get Attribute, définition de l'attribut Loc sur MD, puis clic sur Main Page pour revenir à la page précédente.

15 Vous pouvez maintenant simuler le retour en ligne de l'instance ServerA avec la possibilité d'extraire la nouvelle valeur de session, MD, pour l'attribut Loc, qui vient d'être défini via l'instance ServerB.

A présent, le navigateur a été actualisé et il pointe sur Server A, dont est extrait la valeur de l'attribut Loc de la grille de données.

Affichage d'un navigateur ouvert à l'adresse localhost:9081/HttpSessionWAR/. Affichage également de la saisie d'une commande pour démarrer l'instance ServerA en ligne de commande dans C:\hands-in\wlp\bin:
server start ServerA

Affichage de l'opération d'actualisation du navigateur ouvert sur l'adresse localhost:9080/HttpSessionWAR/. Le navigateur affiche l'exemple de session HTTP WebSphere eXtreme Scale sans aucune valeur d'attribut définie.

Enfin, clic sur Get Attribute pour l'attribut Loc afin de montrer qu'il est défini sur MD, puis clic sur Main Page pour revenir à l'écran précédent.

Tableau 4. Conclusion. Récapitulatif du contenu de la vidéo et affichage des liens pour plus d'informations.
Scène Audio Action à l'écran
16 Félicitations ! Vous venez de créer votre premier cluster Liberty avec deux instances pointant sur une grille de données en mémoire partagée pour le stockage de session HTTP. Affichage des informations sur la reprise de session HTTP :
Hands-On Demo: Session Cache

HTTP Session Failover for Liberty

Demonstration of Server Recovery or additional Liberty Instances being added to topology will immediately see and share the Session Cache.

Un graphique affiche ServerA et ServerB dans Liberty avec les deux serveurs connectés à un cache de session.

17 Dans cette vidéo, vous avez appris à utiliser un cache pour la persistence de session.

Aucune modification de code n'est nécessaire dans l'application pour optimiser la grille de données WebSphere eXtreme Scale.

Les données de chaque session persistent même en cas de panne serveur.

WebSphere eXtreme Scale peut évoluer vers les téraoctets de données et il peut répliquer des données sur des milliers de noeuds pour la tolérance aux pannes et la haute disponibilité.

Affichage des informations sur la gestion de session Liberty :
Liberty Session Management with WXS

Special purpose elastic in memory cache for storing HTTP session data.

Stores and persists HTTP session objects to the data grid so that they do not have to be stored in the memory.

No code change to applications using the J2EE standard HTTP session cache.

Data for each HTTP session survives on a server outage for an application.

Requires no developer effort to manage
.
Replicates the session data to avoid a single point of failure.

Provides low latency data access, transactional semantics.
18 Consultez ces ressources pour plus de détails sur le téléchargement et l'installation de WebSpphere eXtreme Scale dans Liberty et sur l'accès à l'exemple d'application utilisé dans cette démonstration.

Je vous remercie pour votre attention. Ceci conclue la vidéo relative à la configuration de la gestion du cache de session avec Liberty et WebSphere eXtreme Scale.

Affichage des ressources :

(WASdev) https://developer.ibm.com/wasdev

(How to install WXS with Liberty) http://youtu.be/Zu4Z1GLjMlE

(Exemple d'application utilisé dans la démonstration) http://ibm.co/1umQ7iy


Icône indiquant le type de rubrique Rubrique de concept



Icône d'horodatage Dernière mise à jour: Tuesday, 6 December 2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=video_transcript_xs_session_cache
Nom du fichier : video_transcript_xs_session_cache.html