Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 19063|Απάντηση: 0

[ASP.NET] . Καθαρή κατανεμημένη αρχιτεκτονική: Κοινή χρήση συνεδρίας με βάση το Redis

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 15/10/2018 1:26:55 μ.μ. | | | |
1: Εισαγωγή στη συνεδρία

Τι είναι το Session; Με απλά λόγια, είναι ένας αριθμός που δίνεται στον πελάτη από τον διακομιστή. Όταν εκτελείται ένας διακομιστής web, ενδέχεται να υπάρχουν πολλοί χρήστες που περιηγούνται σε τοποθεσίες Web που εκτελούνται σε αυτόν το διακομιστή. Όταν κάθε χρήστης συνδέεται για πρώτη φορά στον διακομιστή ιστού, δημιουργεί μια περίοδο λειτουργίας με τον διακομιστή και ο διακομιστής του εκχωρεί αυτόματα ένα SessionID για να προσδιορίσει τη μοναδική ταυτότητα του χρήστη. Αυτό το SessionID είναι μια συμβολοσειρά 24 χαρακτήρων που δημιουργείται τυχαία από τον διακομιστή ιστού και θα τη δούμε σε δράση στο παρακάτω πείραμα.

2: Κεντρική λειτουργία και διαμόρφωση της συνεδρίας στο Asp.Net

(1): InProc, Session αποθηκεύεται στη διαδικασία, η οποία είναι επίσης η μέθοδος αποθήκευσης στο ASP.Net και είναι επίσης η προεπιλεγμένη τιμή
(2): StateServer, Session αποθηκεύεται σε χωριστή κρατική υπηρεσία, δηλαδή ASP.NET State Service
(3): SQLServer, η περίοδος λειτουργίας αποθηκεύεται στη βάση δεδομένων του SQL Server
(4): Προσαρμοσμένη, μια προσαρμοσμένη μέθοδος αποθήκευσης, η οποία μπορεί να αποθηκευτεί σε Oracle, SQLServer, MongoDb και Redis
Αυτό το άρθρο μιλά κυρίως για την αποθήκευση και την κοινή χρήση των Sessions στο Redis

3: Διαμόρφωση υπηρεσίας παροχής συνεδρίας με βάση το Redis

(1) Κάντε τις ακόλουθες αλλαγές στα HomeControllers των Τοποθεσιών Α και Β, όπως φαίνεται στην παρακάτω εικόνα, και προσθέστε τις λειτουργίες δημιουργίας και λήψης περιόδων σύνδεσης


Οι αντίστοιχες προβολές View


   (2) Διαμόρφωση RedisProvider: Microsoft.Web.RedisSessionStateProvider
Εγκαταστήστε το Microsoft.Web.RedisSessionStateProvider με το Nuget όπως φαίνεται στην παρακάτω εικόνα:

        Τροποποιήστε το προφίλ:



4. Δοκιμή συνεδρίας εξισορρόπησης φορτίου

(1) Εισαγάγετε στο πρόγραμμα περιήγησης:http://192.168.152.128/   Δημιουργήστε μια συνεδρία


     (2) Εισαγάγετε στο πρόγραμμα περιήγησης:http://192.168.152.128/home/getsessionvalue, Ανοίξτε δύο καρτέλες, φροντίστε να τις ανοίξετε στο ίδιο παράθυρο του προγράμματος περιήγησης, διαφορετικά το SessionID θα είναι σίγουρα διαφορετικό


Από το σχήμα, μπορείτε να δείτε ότι ο ιστότοπος Α μοιράζεται τις συνεδρίες που δημιουργήθηκαν από τον ιστότοπο Β.
Μπορείτε επίσης να δείτε τη συνεδρία που μόλις δημιουργήσατε από το redis όπως φαίνεται στο παρακάτω σχήμα







Προηγούμενος:Asp.Net εισαγωγή εγγενούς EF MVC, ο σωστός τρόπος ενημέρωσης των δεδομένων
Επόμενος:Το Angular6 παρουσιάζει το jquery και το bootstrap
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com