Maison > Opération et maintenance > Nginx > le corps du texte

Pratique de configuration d'équilibrage de charge Nginx pour améliorer la disponibilité du site Web

WBOY
Libérer: 2023-07-04 14:58:37
original
960 Les gens l'ont consulté

Pratique de configuration de l'équilibrage de charge Nginx pour améliorer la disponibilité du site Web

Résumé : Nginx est un serveur Web hautes performances et un serveur proxy inverse. Grâce à la configuration de l'équilibrage de charge, les requêtes peuvent être distribuées à plusieurs serveurs principaux, améliorant ainsi la disponibilité et les performances du site Web. Cet article explique comment configurer l'équilibrage de charge Nginx et utiliser un exemple de code.

  1. Qu'est-ce que l'équilibrage de charge ?

L'équilibrage de charge est une technologie qui distribue les requêtes à plusieurs serveurs en répartissant uniformément la charge, elle peut améliorer la stabilité et les performances du système. L'équilibrage de charge peut améliorer la disponibilité du site Web. Lorsqu'un serveur principal tombe en panne, d'autres serveurs peuvent toujours fournir des services normalement.

  1. Configuration de l'équilibrage de charge Nginx

Nginx peut configurer l'équilibrage de charge via le module en amont. Nous pouvons ajouter la configuration suivante au fichier de configuration Nginx (généralement /etc/nginx/nginx.conf) :

http {
    upstream myapp {
        server backend1.example.com;
        server backend2.example.com;
        server backend3.example.com;
    }
    
    server {
        listen 80;
        
        location / {
            proxy_pass http://myapp;
        }
    }
}
Copier après la connexion

Dans la configuration ci-dessus, nous définissons un bloc en amont nommé myapp, qui contient plusieurs adresses de serveurs backend. Dans le bloc serveur, nous transmettons la requête à myapp via la directive proxy_pass.

  1. Stratégie d'équilibrage de charge

Nginx prend en charge plusieurs stratégies d'équilibrage de charge, telles que l'interrogation (stratégie par défaut), le hachage IP, le minimum de connexions, etc. Nous pouvons configurer la politique en ajoutant les directives pertinentes dans le bloc en amont. Voici quelques exemples de plusieurs stratégies d'équilibrage de charge couramment utilisées :

  • Stratégie d'interrogation :

    upstream myapp {
      server backend1.example.com;
      server backend2.example.com;
      server backend3.example.com;
    }
    Copier après la connexion
  • Stratégie de hachage IP :

    upstream myapp {
      ip_hash;
      server backend1.example.com;
      server backend2.example.com;
      server backend3.example.com;
    }
    Copier après la connexion
  • Stratégie de moindre connexion :

    upstream myapp {
      least_conn;
      server backend1.example.com;
      server backend2.example.com;
      server backend3.example.com;
    }
    Copier après la connexion
  1. Exemple de code d'équilibrage de charge

Afin de mieux comprendre la configuration de l'équilibrage de charge Nginx, un exemple pratique est donné ci-dessous. Supposons que nous ayons trois serveurs backend qui servent une application Web. Nous pouvons suivre les étapes suivantes pour le configurer :

  • Étape 1 : Déployez l'application web sur chaque serveur backend et écoutez sur différents ports.
  • Étape 2 : Configurez l'équilibrage de charge sur le serveur Nginx.

Exemple de fichier de configuration Nginx (/etc/nginx/nginx.conf) :

http {
    upstream myapp {
        server backend1.example.com:8000;
        server backend2.example.com:8000;
        server backend3.example.com:8000;
    }
    
    server {
        listen 80;
        
        location / {
            proxy_pass http://myapp;
        }
    }
}
Copier après la connexion

Dans l'exemple ci-dessus, nous supposons que chaque serveur backend écoute sur le port 8000. En transmettant la demande à myapp, Nginx sélectionnera automatiquement un serveur backend pour gérer la demande.

  1. Résumé

Grâce à la configuration d'équilibrage de charge de Nginx, nous pouvons répartir uniformément les requêtes de sites Web sur plusieurs serveurs backend pour améliorer la disponibilité et les performances du site Web. Cet article présente la méthode de configuration de l'équilibrage de charge Nginx et fournit un exemple de code. J'espère que les lecteurs pourront apprendre de cet article comment implémenter la configuration de l'équilibrage de charge via Nginx et améliorer la disponibilité des sites Web dans des applications pratiques.

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal