Assiste.com - Sécurité informatique - Vie privée sur le Web - Neutralité d'Internet Assiste.com - Sécurité informatique - Vie privée sur le Web - Neutralité d'Internet

Load balancing - Équilibre de charge

Load balancing - Équilibre de charge : technique d'hébergement des gros sites Web à fort traffic, où le site est distribué sur plusieurs serveurs, mutualisés ou dédiés, se répartissant la charge

cr  01.04.2012      r+  21.08.2020      r-  20.04.2024      Pierre Pinard.         (Alertes et avis de sécurité au jour le jour)

Le « Load balancing » (« répartition de charge » ou « équilibrage de charge ») est une technique utilisée pour les gros sites Web ou services en ligne afin d'équilibrer entre plusieurs serveurs une charge importante de fonctionnement.

Cet équilibre peut être fait de manière statique en distribuant arbitrairement les ressources sur divers serveurs. Par exemple :

  • Serveurs de pages
  • Serveurs d'images
  • Serveurs de vidéo
  • Serveurs de son
  • Serveurs de script
  • Serveurs de formulaires
  • Serveur de base de données
  • Etc.

Cet équilibre peut être établi de manière dynamique avec un superviseur appelé « Load balancer » (« Répartiteur de charge »).

Ce mécanisme audite en temps réel le trafic sur chacune des ressources d'un site ou service en ligne et déplace dynamiquement les objets en fonction de leur « popularité » dans un cluster de serveurs dont la charge est également sous surveillance (la surcharge ou la panne d'un serveur est corrigée en temps réel afin d'assurer la permanence, non stop [« tolérance de panne »], du service). Les clusters disques sont eux-mêmes montés en tolérance de panne (RAID [Redundant Arrays of Inexpensive Disks]). Par exemple, le « Load balancer » distribue :

  • Les quelques pages dans le top des plus visitées dans la mémoire RAM (cache - accélération par le principe d'anticipation) d'un serveur frontal
  • Les pages les plus visitées sur un autre serveur
  • Les pages peu visitées, comme les pages d'archives, sur un autre serveur
  • Les vidéos réparties sur plusieurs serveurs avec, pour chaque serveur, un équilibre de charge sur la bande passante
  • Etc.

Le but est toujours d'assurer :

  • La fluidité du service
  • La rapidité
  • La permanence
  • La tolérance de pannes

Un « Load balancer » exploite, de manière dynamique (adaptative en temps réel) une répartition de même nature que l' « ordonnanceur de processus » (« round-robin ») répartit la charge des demandes d'exécutions entre les processeurs selon leurs charges/disponibilité.

l'ordonnanceur fait tourner le tourniquet
Processus sur le tourniquet (Round-Robin) - l'ordonnanceur fait tourner le tourniquet




Load balancing, Load Balancer, répartiteur de charge, équilibre de charge, mise à l'échelle de l'infrastructure d'un site ou service en ligne, tolérance de panne, temps de réponse, permanence du service, zéro interruption, zero downtime, tolérance de panne, non stop