Šis straipsnis yra veidrodinis mašininio vertimo straipsnis, spauskite čia norėdami pereiti prie originalaus straipsnio.

Rodinys: 19063|Atsakyti: 0

[ASP.NET] . Grynoji paskirstyta architektūra: seansų bendrinimas pagal Redis

[Kopijuoti nuorodą]
Paskelbta 2018-10-15 13:26:55 | | | |
1: Įvadas į sesiją

Kas yra "Session"? Paprasčiau tariant, tai yra numeris, kurį klientui suteikia serveris. Kai veikia žiniatinklio serveris, gali būti keli vartotojai, naršantys tame serveryje veikiančias svetaines. Kai kiekvienas vartotojas pirmą kartą prisijungia prie žiniatinklio serverio, jis sukuria sesiją su serveriu, o serveris automatiškai priskiria jam sesijos ID, kad nustatytų unikalią vartotojo tapatybę. Šis "SessionID" yra 24 simbolių eilutė, atsitiktinai sugeneruota žiniatinklio serverio, ir pamatysime, kaip ji veikia toliau pateiktame eksperimente.

2: Centralizuotas seanso režimas ir konfigūracija Asp.Net

(1): InProc, Session saugomas procese, kuris taip pat yra saugojimo būdas ASP.Net ir taip pat yra numatytoji reikšmė
(2): StateServer, Session saugomas atskiroje būsenos tarnyboje, t. y. ASP.NET būsenos tarnyboje
(3): SQLServer, sesija saugoma SQL serverio duomenų bazėje
(4): Pasirinktinis, pasirinktinis išsaugojimo metodas, kurį galima išsaugoti Oracle, SQLServer, MongoDb ir Redis
Šiame straipsnyje daugiausia kalbama apie "Redis" sesijų saugojimą ir bendrinimą

3: Seanso teikėjo konfigūracija pagal Redis

(1) Atlikite šiuos A ir B svetainių namų valdiklių pakeitimus, kaip parodyta paveikslėlyje žemiau, ir pridėkite seansų kūrimo ir gavimo funkcijas


Atitinkami rodinio rodiniai


   (2) RedisProvider konfigūracija: Microsoft.Web.RedisSessionStateProvider
Įdiekite Microsoft.Web.RedisSessionStateProvider su Nuget, kaip parodyta šiame paveikslėlyje:

        Modifikuokite profilį:



4. Apkrovos balansavimo sesijos testas

(1) Naršyklėje įveskite:http://192.168.152.128/   Sukurti sesiją


     (2) Naršyklėje įveskite:http://192.168.152.128/home/getsessionvalue, Atidarykite du skirtukus, būtinai atidarykite juos tame pačiame naršyklės lange, kitaip SessionID tikrai skirsis


Iš paveikslėlio matote, kad svetainė A bendrina svetainės B sukurtus seansus.
Taip pat galite matyti ką tik sukurtą seansą iš redis, kaip parodyta paveikslėlyje žemiau







Ankstesnis:Asp.Net MVC vietinio EF įterpimo, tinkamas būdas atnaujinti duomenis
Kitą:"Angular6" pristato "jquery" ir "bootstrap"
Atsakomybės apribojimas:
Visa programinė įranga, programavimo medžiaga ar straipsniai, kuriuos skelbia Code Farmer Network, yra skirti tik mokymosi ir mokslinių tyrimų tikslams; Aukščiau nurodytas turinys negali būti naudojamas komerciniais ar neteisėtais tikslais, priešingu atveju vartotojai prisiima visas pasekmes. Šioje svetainėje pateikiama informacija gaunama iš interneto, o ginčai dėl autorių teisių neturi nieko bendra su šia svetaine. Turite visiškai ištrinti aukščiau pateiktą turinį iš savo kompiuterio per 24 valandas nuo atsisiuntimo. Jei jums patinka programa, palaikykite autentišką programinę įrangą, įsigykite registraciją ir gaukite geresnes autentiškas paslaugas. Jei yra kokių nors pažeidimų, susisiekite su mumis el. paštu.

Mail To:help@itsvse.com