Qu'est-ce que la persistance de session ?

La persistance de session fait référence au fait de diriger les requêtes d’un client vers le même serveur Web ou d’application principal pendant la durée d’une « session » ou le temps nécessaire pour terminer une tâche ou une transaction.

Les sites Web à fort trafic doivent prendre en charge des centaines de milliers, voire des millions d’utilisateurs de manière rapide et fiable. Les organisations informatiques prennent en charge ces volumes importants en regroupant les serveurs dans ce que l’on appelle souvent une ferme de serveurs . Un équilibreur de charge se trouve devant le groupe de serveurs et dirige le trafic vers des serveurs individuels de manière à maximiser l'efficacité.

Si un utilisateur navigue sur votre site Web pendant cinq minutes, il récupère probablement des informations à partir de plusieurs serveurs principaux. Ne pas accéder au même serveur à chaque fois peut entraîner des problèmes si le navigateur Web ou le serveur principal tente d’améliorer l’expérience Web en stockant des informations qui permettent à l’action suivante de l’utilisateur de se produire plus rapidement. Dans ce cas, il est important – pour ne pas dire impératif – que toutes les requêtes de l’utilisateur soient envoyées au même serveur.

Pour améliorer les performances, un serveur back-end peut mettre en cache les données demandées par un utilisateur, ainsi que pré-mettre en cache les informations supplémentaires qu'il pense qu'un utilisateur pourrait demander. Souvent, ce qui ressemble à une seule requête pour l’utilisateur, comme le téléchargement d’un document volumineux, est en réalité décomposé et transmis entre le client et le serveur sous forme de plusieurs transactions de requête-réponse. Le moyen le plus efficace pour l’utilisateur de recevoir les informations demandées est d’accéder au serveur qui les a déjà mises en cache.

Dans d’autres cas, un utilisateur peut s’engager dans une transaction qui nécessite plusieurs étapes telles que remplir un formulaire, acheter un produit ou mettre à niveau son compte. Lorsque le client et le serveur échangent des données, ils doivent stocker des informations d'état sur la session (appelées contexte ) pour que la transaction se déroule correctement. Dans ce cas, la persistance de session facilite grandement la réalisation des transactions.

Un équilibreur de charge ou un contrôleur de distribution d'applications (ADC) se trouve devant le groupe de serveurs et implémente la logique qui lie une session utilisateur à un serveur spécifique aussi longtemps que nécessaire.

Comment NGINX Plus peut-il vous aider ?

NGINX Plus et NGINX sont les meilleures solutions d’équilibrage de charge utilisées par les sites Web à fort trafic tels que Dropbox, Netflix et Zynga. Plus de 350 millions de sites Web dans le monde s'appuient sur NGINX Plus et NGINX Open Source pour diffuser leur contenu rapidement, de manière fiable et sécurisée.

En tant qu’équilibreur de charge basé sur un logiciel, NGINX Plus est considérablement moins cher que les solutions matérielles dotées de capacités similaires. NGINX gère nativement la persistance des sessions de plusieurs manières, notamment en utilisant des cookies et des itinéraires persistants.