Maison >Opération et maintenance >Nginx >Comment expliquer oralement le principe d'équilibrage de charge nginx
Principe d'équilibrage de charge
Le client envoie une demande au proxy inverse, puis le proxy inverse transmet la demande selon un certain mécanisme de chargement sur le serveur cible (ces serveurs exécutent tous la même application) et renvoie le contenu obtenu au client. Pendant cette période, la demande de proxy peut être envoyée à différents serveurs selon la configuration. (Apprentissage recommandé : Tutoriel Nginx)
Configuration de l'équilibrage de charge
Cas de test :
Comme indiqué ci-dessous, la même application est déployée sur deux serveurs (192.168.1.103, 192.168.1.102) et le site Web est accessible via le port 8080, comme indiqué ci-dessous
http://192.168.1.xx:8080/webautotest/xxxxxxx
à en même temps sur 192.168. Le proxy inverse nginx est installé sur 1.103, et je souhaite accéder aux deux sites via le port 80 de 192.168.1.103
Modifier le fichier de configuration nginx (dans l'exemple, /usr/local /ngnix/conf/nginx. conf), recherchez le nœud http, comme suit, ajoutez le contenu avec la couleur d'arrière-plan
http { upstream myapp1 { server 192.168.1.103:8080; server 192.168.1.104:8080; } ……略 server { listen 80; server_name localhost; ……略 location /webautotest/ { proxy_buffering off; proxy_pass http://myapp1; } } }
Recharger le fichier de configuration
[root@localhost nginx-1.10.0]# /usr/local/ngnix/sbin/nginx -s reload
Accéder à l'url de test
comme suit, accéder à la même page et afficher les pages de différents serveurs
Explication :
Méthode d'équilibrage de charge
nginx fournit les trois mécanismes d'équilibrage de charge suivants, Méthode :
round-robin — Les requêtes sont distribuées au serveur d'applications de manière circulaire.
le moins connecté — la requête suivante est attribuée au serveur avec le moins de connexions actives
ip-hash — utilise une fonction de hachage pour déterminer où la prochaine requête doit être basée sur le Adresse IP du client Sur quel serveur distribuer.
Configuration d'équilibrage de charge par défaut
http { upstream myapp1 { server srv1.example.com; server srv2.example.com; server srv3.example.com; } server { listen 80; location / { proxy_pass http://myapp1; } } }
Dans l'exemple ci-dessus, 3 instances d'application s'exécutent respectivement sur srv1-srv3. Lorsque la méthode d'équilibrage de charge spécifiée ne s'affiche pas, la méthode par défaut est round-robin. Toutes les requêtes sont transmises par le proxy au groupe de serveurs myapp1 et les requêtes sont distribuées selon la méthode d'équilibrage de charge.
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!