1: Pengantar Sesi
Apa itu Sesi? Sederhananya, ini adalah angka yang diberikan kepada klien oleh server. Saat server web berjalan, mungkin ada beberapa pengguna yang menjelajahi situs web yang berjalan di server tersebut. Saat setiap pengguna pertama kali terhubung ke server web, ia membuat sesi dengan server, dan server secara otomatis menetapkannya SessionID untuk mengidentifikasi identitas unik pengguna. SessionID ini adalah string 24 karakter yang dibuat secara acak oleh server web, dan kita akan melihatnya beraksi dalam eksperimen di bawah ini.
2: Mode terpusat dan konfigurasi Sesi di Asp.Net
(1): InProc, Sesi disimpan dalam proses, yang juga merupakan metode penyimpanan di ASP.Net dan juga merupakan nilai default (2): StateServer, Sesi disimpan dalam layanan status terpisah, yaitu, ASP.NET State Service (3): SQLServer, Sesi disimpan dalam database SQL Server (4): Kustom, metode penyimpanan khusus, yang dapat disimpan di Oracle, SQLServer, MongoDb, dan Redis Artikel ini terutama berbicara tentang penyimpanan dan berbagi Sesi di Redis
3: Konfigurasi Penyedia Sesi berdasarkan Redis
(1) Buat perubahan berikut pada HomeControllers Situs A dan B, seperti yang ditunjukkan pada gambar di bawah ini, dan tambahkan fungsi membuat dan mendapatkan sesi
Tampilan Tampilan yang sesuai
(2) Konfigurasi RedisProvider: Microsoft.Web.RedisSessionStateProvider Instal Microsoft.Web.RedisSessionStateProvider dengan Nuget seperti yang ditunjukkan pada gambar berikut:
Ubah profil:
4. Uji sesi penyeimbangan beban
(1) Masukkan di browser:http://192.168.152.128/ Membuat Sesi
(2) Masukkan di browser:http://192.168.152.128/home/getsessionvalue, Buka dua tab, pastikan untuk membukanya di jendela browser yang sama, jika tidak, SessionID pasti akan berbeda
Dari gambar, Anda dapat melihat bahwa situs A membagikan sesi yang dibuat oleh situs B. Anda juga dapat melihat Sesi yang baru saja Anda buat dari redis seperti yang ditunjukkan pada gambar di bawah ini
|