Déploiement de ferme Web
Définition
Exécution d'une application sur plusieurs serveurs derrière un équilibreur de charge, de sorte que les requêtes consécutives du même utilisateur peuvent être traitées par différentes machines.
Les fermes Web cassent tout ce qui suppose qu'une requête atterrit au même endroit que la précédente. Les visionneuses de documents sont particulièrement exposées à cela, car l'ouverture d'un document crée un état côté serveur — les pages rendues — que les requêtes ultérieures s'attendent à trouver.
La solution naïve consiste à utiliser des sessions persistantes, en assignant un utilisateur à un nœud. Cela fonctionne jusqu'à ce que ce nœud soit vidé pour le déploiement, moment où chaque document ouvert en cours échoue simultanément.
La solution durable est un cache de rendu partagé. N'importe quel nœud peut servir une page pour une session ouverte par un autre nœud, ainsi les nœuds deviennent interchangeables et les déploiements progressifs cessent d'être un événement.
Dans Doconut
Les fermes Web et les déploiements distribués sont pris en charge via un cache de rendu partagé, de sorte qu'une session ouverte sur un nœud reste lisible depuis un autre. Les images de pages mises en cache sont des copies dérivées de documents sensibles — définissez une politique d'éviction du cache qui correspond à vos règles de rétention.
Termes associés
Jeton de session opaque
Un identifiant qui ne porte aucune signification pour celui qui le détient — il fait référence à un état côté serveur plutôt que de le décrire, de sorte qu'un client ne peut pas le lire, le modifier ou deviner une valeur voisine.
Rendu de document côté serveur
Conversion d'un document en images de pages sur le serveur, de sorte que le navigateur affiche des pages rendues plutôt que d'analyser le fichier original lui‑même.
Déploiement air-gapped
Exécuter un logiciel dans un environnement sans aucune route réseau vers Internet, de sorte que chaque dépendance nécessaire doit déjà être à l'intérieur de la frontière.