1: Úvod do sezení
Co je to Session? Jednoduše řečeno, je to číslo, které klient dostane od serveru. Když běží webový server, může na něm běžet několik uživatelů, kteří prohlížejí webové stránky. Když se každý uživatel poprvé připojí k webovému serveru, naváže s ním relaci a server mu automaticky přiřadí SessionID pro identifikaci jedinečné identity uživatele. Tento SessionID je 24znakový řetězec náhodně generovaný webovým serverem, který uvidíme v praxi v experimentu níže.
2: Centralizovaný režim a konfigurace relace v Asp.Net
(1): InProc, Session je uložena v procesu, což je zároveň metoda ukládání v ASP.Net a zároveň výchozí hodnota (2): StateServer, Session je uložena v samostatné state service, tj. ASP.NET State Service (3): SQLServer, relace je uložena v databázi SQL Server (4): Custom, vlastní metoda ukládání (Custom), kterou lze uložit v Oracle, SQLServer, MongoDb a Redis Tento článek se hlavně zabývá ukládáním a sdílením Sessions v Redis
3: Konfigurace Session Provider založená na Redisu
(1) Provést následující změny v HomeControllerech lokalit A a B, jak je znázorněno na obrázku níže, a přidat funkce vytváření a získávání relací
Odpovídající pohledy View
(2) Konfigurace RedisProvider: Microsoft.Web.RedisSessionStateProvider Nainstalujte Microsoft.Web.RedisSessionStateProvider pomocí Nugetu, jak je znázorněno na následujícím obrázku:
Upravte profil:
4. Test vyvažování zátěže
(1) Zadejte do prohlížeče:http://192.168.152.128/ Vytvořte relaci
(2) Zadejte do prohlížeče:http://192.168.152.128/home/getsessionvalue, Otevřete dvě záložky, ujistěte se, že je otevřete ve stejném okně prohlížeče, jinak bude SessionID určitě jiné
Z obrázku je vidět, že místo A sdílí relace vytvořené místem B. Můžete také vidět relaci, kterou jste právě vytvořili z redis, jak je znázorněno na obrázku níže
|