Un équilibreur de charge est un dispositif agissant en tant que proxy inverse pour répartir le trafic du réseau ou des applications sur plusieurs serveurs. Les équilibreurs de charge sont utilisés pour augmenter la capacité (les utilisateurs simultanés) et la fiabilité des applications. Ils améliorent les performances globales des applications en diminuant la charge des serveurs associée à la gestion et à la maintenance des sessions d’applications et de réseau, ainsi qu’en effectuant des tâches spécifiques aux applications.
Les équilibreurs de charge sont généralement regroupés en deux catégories : en couche 4 et en couche 7. Les équilibreurs de charge en couche 4 agissent sur les données présentes dans les protocoles des couches réseau et transport (IP, TCP, FTP, UDP). Les équilibreurs de charge en couche 7 répartissent les requêtes basées sur des données présentes dans les protocoles de la couche application tels que HTTP.
Les requêtes sont reçues par les deux types d’équilibreurs de charge et affectées à un serveur donné sur la base d’un algorithme configuré. Parmi les algorithmes couramment utilisés sont :
Les équilibreurs de charge en couche 7 peuvent en outre répartir les requêtes en fonction de données spécifiques à l’application telles que les en-têtes HTTP, les cookies ou les données contenues dans le message d’application lui-même, comme la valeur d’un paramètre spécifique.
Les équilibreurs de charge assurent la fiabilité et la disponibilité en surveillant la « santé » des applications et en n’envoyant les demandes qu’aux serveurs et aux applications capables d’y répondre rapidement.
Pour en savoir plus sur l’équilibrage de charge, visitez le site DevCentral.