Comment Nginx implémente la configuration de l'équilibrage de charge, des exemples de code spécifiques sont requis
Introduction :
L'équilibrage de charge est une méthode d'allocation des charges de travail entre les serveurs réseau afin que plusieurs serveurs puissent traiter les demandes de manière collaborative et améliorer la disponibilité et les performances du système. Dans Nginx, nous pouvons réaliser l'équilibrage de charge via la configuration. Cet article expliquera comment utiliser Nginx pour la configuration de l'équilibrage de charge et fournira des exemples de code spécifiques. J'espère qu'il sera utile aux lecteurs.
1. Principes de base de l'équilibrage de charge Nginx
Nginx implémente l'équilibrage de charge via un proxy inverse HTTP. Lorsque le client envoie une requête, Nginx agit comme un serveur proxy et transmet la requête à plusieurs serveurs en arrière-plan, puis renvoie les résultats du traitement du serveur au client. Nginx prend en charge diverses stratégies d'équilibrage de charge, notamment l'interrogation, l'interrogation pondérée, le hachage IP, le nombre minimum de connexions, etc.
2. Méthode de configuration de l'équilibrage de charge Nginx
http { upstream backend { server backend1.example.com weight=1; server backend2.example.com weight=2; } server { listen 80; server_name example.com; location / { proxy_pass http://backend; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } } }
Dans la configuration ci-dessus, le mot-clé en amont définit un groupe de serveurs backend, et des serveurs peuvent être ajoutés ou supprimés selon les besoins. Parmi eux, backend1.example.com et backend2.example.com peuvent être remplacés par le nom de domaine ou l'adresse IP réel du serveur. Le paramètre poids définit le poids de chaque serveur. Plus le poids est élevé, plus il traite de requêtes.
sudo systemctl restart nginx
3. Exemples et effets de l'équilibrage de charge Nginx
Supposons qu'il y ait deux serveurs backend1 (192.168.1.100) et backend2 (192.168.1.200), où le poids du backend2 est le double de celui du backend1. Lorsqu'un client envoie une demande, Nginx la répartira en fonction du poids. La configuration spécifique est la suivante :
http { upstream backend { server 192.168.1.100 weight=1; server 192.168.1.200 weight=2; } server { listen 80; server_name example.com; location / { proxy_pass http://backend; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } } }
Dans la configuration ci-dessus, lorsque 100 requêtes sont envoyées à Nginx, le backend1 traitera le poids de 100/3≈34 requêtes, tandis que le backend2 traitera le poids de 100/3*2≈67. requêtes, réalisant ainsi l’équilibrage de charge.
Conclusion :
Grâce à la configuration et à l'exemple de code ci-dessus, nous pouvons voir que la fonction d'équilibrage de charge de Nginx est très puissante et facile à configurer. Qu'il s'agisse d'un petit site Web ou d'une grande application, vous pouvez utiliser Nginx pour obtenir une haute disponibilité et un équilibrage de charge haute performance. J'espère que cet article vous aidera à comprendre la méthode de configuration de l'équilibrage de charge Nginx.
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!