1 : Introduction à la session
Qu’est-ce que Session ? En termes simples, il s’agit d’un chiffre donné au client par le serveur. Lorsqu’un serveur web fonctionne, plusieurs utilisateurs peuvent naviguer sur des sites web qui tournent sur ce serveur. Lorsque chaque utilisateur se connecte pour la première fois au serveur web, il établit une session avec le serveur, et le serveur lui attribue automatiquement un Session ID pour identifier l’identité unique de l’utilisateur. Cet ID de session est une chaîne de 24 caractères générée aléatoirement par le serveur web, et nous la verrons en action dans l’expérience ci-dessous.
2 : Mode centralisé et configuration de la session dans le Asp.Net
(1) : InProc, Session est stockée dans le processus, qui est aussi la méthode de stockage dans le ASP.Net et la valeur par défaut (2) : StateServer, Session est stockée dans un service d’état séparé, c’est-à-dire ASP.NET service d’état (3) : SQLServer, Session est stockée dans la base de données SQL Server (4) : Custom, une méthode de sauvegarde personnalisée, qui peut être sauvegardée dans Oracle, SQLServer, MongoDB et Redis Cet article parle principalement du stockage et du partage des sessions à Redis
3 : Configuration du fournisseur de session basée sur Redis
(1) Effectuer les modifications suivantes aux HomeControllers des sites A et B, comme montré dans la figure ci-dessous, et ajouter les fonctions de création et d’obtention des sessions
Les vues correspondantes de la Vue
(2) Configuration RedisProvider : Microsoft.Web.RedisSessionStateProvider Installez Microsoft.Web.RedisSessionStateProvider avec Nuget comme montré sur l’image suivante :
Modifier le profil :
4. Test de session d’équilibrage de charge
(1) Saisissez dans le navigateur :http://192.168.152.128/ Créer une session
(2) Entrer dans le navigateur :http://192.168.152.128/home/getsessionvalue, Ouvre deux onglets, assure-toi de les ouvrir dans la même fenêtre de navigateur, sinon l’ID de session sera clairement différent
D’après la figure, vous pouvez voir que le site A partage les sessions créées par le site B. Vous pouvez aussi voir la session que vous venez de créer à partir de Redis comme montré dans la figure ci-dessous
|