conception de cohérence de session
Cohérence des sessions
Qu'est-ce qu'une session
Le serveur Web peut créer automatiquement des sessions pour les utilisateurs accédant au même navigateur et fournir des fonctions de stockage. Généralement, les informations de connexion de l'utilisateur sont stockées dans la session.
Quel est le problème de cohérence de session ?
Lorsqu'il n'y a qu'un seul serveur Web dans le backend, la session correcte peut être trouvée pour chaque requête http. Le problème est qu'il ne peut pas assurer la haute disponibilité. Si un serveur raccroche, ce sera terminé. Redondance + basculement, déployez plusieurs serveurs Web et routes nginx vers différents serveurs Web. Chaque requête http est acheminée et il n'est pas garanti qu'elle soit acheminée vers le même serveur, ce qui entraîne des problèmes de cohérence.
Solutions courantes pour résoudre la cohérence des sessions
Hash cohérent
La première solution qui vient à l'esprit est de hacher en fonction de l'adresse IP du client pour garantir que la même IP tombe sur le même site Web sur le serveur. Vous pouvez également utiliser des hachages basés sur des champs métier, tels que userId et cityId, qui sont plus flexibles à utiliser. Cependant, cela détruit le principe d’unicité et rend la passerelle et l’entreprise collantes. Il n’est pas recommandé de l’utiliser sauf si cela est nécessaire. Avantages : Enregistre le cache, peut être étendu horizontalement. Inconvénients : lorsque certains services sont redémarrés, les sessions seront perdues, ce qui obligera certains utilisateurs à se reconnecter. Si le hachage est étendu horizontalement et que la session est redistribuée après le rehachage, certains utilisateurs ne pourront pas acheminer la session
synchronisation de session
Les sessions entre plusieurs serveurs Web sont synchronisées les unes avec les autres , de sorte que chaque serveur Web contient toutes les informations de session. Inconvénients : Comme il contient toutes les sessions, le nombre de clusters est limité par la mémoire et l'extension est limitée.
Stockage du client
Les informations de connexion sont enregistrées sur le client et chaque demande contient des informations sur l'utilisateur. Le serveur est complètement apatride et facile à étendre. Avantages : Aucun stockage n’est requis côté serveur. Inconvénients : chaque requête http transporte des informations sur l'utilisateur, ce qui gaspille du trafic ; il existe un risque de fuite d'informations. Les cookies ne peuvent pas stocker trop d'informations.
Stockage centralisé back-end
Le serveur Web est lié à un stockage unifié pour enregistrer les informations de session. Il est recommandé de les stocker dans le cluster Redis pour faciliter l'expansion ultérieure. Avantages : Il n'y a aucun risque de fuite d'informations ; l'expansion horizontale ne perd pas de données. Inconvénients : Une requête réseau supplémentaire est ajoutée et le code métier doit être modifié pour interroger Redis.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Cet article examine l'approvisionnement du système d'audit de la sécurité opérationnelle. Il détaille les catégories typiques (matériel, logiciels, services), allocation budgétaire (CAPEX, OPEX, projet, formation, éventualité) et véhicules contractuels gouvernementaux appropriés (GSA SCH

Cet article détaille les responsabilités de sécurité cruciales pour les ingénieurs DevOps, les administrateurs système, le personnel des opérations informatiques et le personnel de maintenance. Il met l'accent sur l'intégration de la sécurité à toutes les étapes du SDLC (DevOps), implémentant un accès robuste C

Cet article explore les rôles et les compétences requises des ingénieurs de DevOps, de sécurité et des opérations informatiques. Il détaille les tâches quotidiennes, les cheminements de carrière et les compétences techniques et générales nécessaires pour chacune, soulignant l'importance croissante de l'automatisation, C

Cet article contraste les systèmes d'audit des opérations de sécurité des opérations (OPSEC) et de la sécurité du réseau (NETSEC). L'OPSEC se concentre sur les processus internes, l'accès aux données et le comportement des employés, tandis que NETSEC se concentre sur l'infrastructure réseau et la sécurité de la communication. Clé

Cet article examine DevSecops, intégrant la sécurité dans le cycle de vie du développement logiciel. Il détaille le rôle multiforme d'un ingénieur de sécurité DevOps, englobant l'architecture de sécurité, l'automatisation, la gestion de la vulnérabilité et la réponse aux incidents

Cet article examine les compétences essentielles pour une carrière réussie des opérations de sécurité. Il met en évidence le besoin d'expertise technique (sécurité du réseau, SIEM, plates-formes cloud), compétences analytiques (analyse des données, renseignement sur les menaces) et compétences générales (CO

DevOps améliore la sécurité opérationnelle en automatisant les contrôles de sécurité dans les pipelines CI / CD, en utilisant l'infrastructure comme code pour un contrôle amélioré et en favorisant la collaboration entre les équipes de développement et de sécurité. Cette approche accélère vulnérabi

Cet article détaille la sécurité opérationnelle et de maintenance (O&M), mettant l'accent sur la gestion des vulnérabilités, le contrôle d'accès, la surveillance de la sécurité, la protection des données et la sécurité physique. Responsabilités clés et stratégies d'atténuation, y compris les proacti
