Construire un système d'équilibrage de charge haute disponibilité : Bonnes pratiques de Nginx Proxy Manager
Introduction :
Dans le développement d'applications Internet, le système d'équilibrage de charge est l'un des composants essentiels. Il peut obtenir des services à haute concurrence et haute disponibilité en distribuant les requêtes à plusieurs serveurs. Nginx Proxy Manager est un logiciel d'équilibrage de charge couramment utilisé. Cet article explique comment utiliser Nginx Proxy Manager pour créer un système d'équilibrage de charge à haute disponibilité et fournit quelques exemples de code pratiques.
1. Installez Nginx Proxy Manager
Téléchargez et installez Nginx Proxy Manager :
$ wget http://nginx.org/download/nginx-1.20.1.tar.gz $ tar -zxf nginx-1.20.1.tar.gz $ cd nginx-1.20.1 $ ./configure $ make $ sudo make install
Configurez Nginx Proxy Manager :
$ cd /etc/nginx/ $ sudo vim nginx.conf
Ajoutez le contenu suivant dans nginx.conf :
http { upstream backend { server server1.example.com; server server2.example.com; server server3.example.com; } server { listen 80; location / { proxy_pass http://backend; } } }
Trois. Atteindre haut performances Disponibilité
Afin d'atteindre une haute disponibilité, nous pouvons configurer plusieurs serveurs Nginx Proxy Manager et utiliser le module en amont de Nginx pour l'équilibrage de charge. Voici quelques bonnes pratiques :
Utiliser Round Robin : La directive
upstream backend { ip_hash; server server1.example.com; server server2.example.com; server server3.example.com; }
ip_hash permet à la demande de chaque client d'être toujours traitée par le même serveur backend.
Vérification de l'état ajoutée : la commande
upstream backend { server server1.example.com; server server2.example.com backup; server server3.example.com; health_check interval=5s; }
health_check peut vérifier régulièrement si le serveur backend est disponible et supprimer temporairement les serveurs indisponibles du pool d'équilibrage de charge pour garantir que seuls les serveurs sains participent au traitement des demandes.
Utiliser des poids : la directive
upstream backend { server server1.example.com weight=3; server server2.example.com weight=2; server server3.example.com weight=1; }
weight peut attribuer différents poids en fonction des performances du serveur backend pour obtenir un équilibrage de charge plus raisonnable.
4. Surveillance et réglage
Dans les applications pratiques, nous devons surveiller les performances de Nginx Proxy Manager en temps réel et les régler pour améliorer la stabilité du système. Voici quelques suggestions :
Utilisez le module d'état Nginx :
Ajoutez le contenu suivant dans nginx.conf :
location /nginx_status { stub_status; }
En accédant à http://votre-domaine/nginx_status, vous pouvez obtenir des informations sur l'état de Nginx, telles que le total nombre de requêtes, nombre de connexions actives, etc.
5. Résumé
Cet article explique comment utiliser Nginx Proxy Manager pour créer un système d'équilibrage de charge à haute disponibilité et fournit quelques exemples de code pratiques. Grâce à une configuration, une surveillance et un réglage raisonnables, nous pouvons améliorer les performances et la fiabilité du système d'équilibrage de charge et offrir aux utilisateurs une meilleure expérience de service.
Matériaux de référence :
Extension Lecture :
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!