Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 19063|Antwoord: 0

[ASP.NET] . Netgedistribueerde architectuur: Sessiedeling gebaseerd op Redis

[Link kopiëren]
Geplaatst op 15-10-2018 13:26:55 | | | |
1: Introductie tot de sessie

Wat is Session? Simpel gezegd is het een getal dat de client door de server krijgt. Wanneer een webserver draait, kunnen er meerdere gebruikers zijn die websites bezoeken die op die server draaien. Wanneer elke gebruiker voor het eerst verbinding maakt met de webserver, stelt hij een sessie op met de server, en de server wijst automatisch een SessionID toe om de unieke identiteit van de gebruiker te identificeren. Deze SessionID is een string van 24 tekens die willekeurig door de webserver wordt gegenereerd, en we zullen deze in het onderstaande experiment in actie zien.

2: Gecentraliseerde modus en configuratie van de sessie in de Asp.Net

(1): InProc wordt Session opgeslagen in het proces, wat ook de opslagmethode in de ASP.Net is en tevens de standaardwaarde is
(2): StateServer, Session wordt opgeslagen in een aparte toestandservice, d.w.z. ASP.NET State Service
(3): SQLServer, Session wordt opgeslagen in de SQL Server-database
(4): Custom, een aangepaste opslagmethode, die kan worden opgeslagen in Oracle, SQLServer, MongoDb en Redis
Dit artikel gaat voornamelijk over het opslaan en delen van Sessions in Redis

3: Configuratie van de sessieprovider gebaseerd op Redis

(1) De volgende wijzigingen aanbrengen in de HomeControllers van sites A en B, zoals weergegeven in de onderstaande figuur, en de functies van het aanmaken en verkrijgen van sessies toevoegen


De bijbehorende View-weergaven


   (2) RedisProvider-configuratie: Microsoft.Web.RedisSessionStateProvider
Installeer Microsoft.Web.RedisSessionStateProvider met Nuget zoals weergegeven in de volgende afbeelding:

        Pas het profiel aan:



4. Load balancing sessietest

(1) Voer in de browser in:http://192.168.152.128/   Maak een sessie aan


     (2) Voer in de browser in:http://192.168.152.128/home/getsessionvalue, Open twee tabbladen, zorg dat je ze in hetzelfde browservenster opent, anders zal de SessionID zeker anders zijn


Uit de afbeelding zie je dat site A de sessies deelt die door site B zijn aangemaakt.
Je kunt ook de sessie zien die je zojuist hebt aangemaakt vanuit Redis, zoals te zien is in de onderstaande figuur







Vorig:Asp.Net MVC native EF-insertie is de juiste manier om de data bij te werken
Volgend:Angular6 introduceert jquery en bootstrap
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com