Maison  >  Article  >  Opération et maintenance  >  Analyse d'un exemple de configuration d'équilibrage de charge Nginx

Analyse d'un exemple de configuration d'équilibrage de charge Nginx

PHPz
PHPzavant
2023-05-28 16:07:121280parcourir

【Fonction d'implémentation】

1. Configurez trois serveurs

2. 🎜#

3. Utilisez nginx pour réaliser l'équilibrage de charge

[Idées d'implémentation]

Notre équilibreur de charge nginx Il sera déployé sur un serveur interactif et configurez les connexions avec les deux autres serveurs. Toutes les requêtes accèdent directement à l'interface du service nginx, puis l'équilibreur de charge nginx choisira le port du serveur appelant réel.

【Environnement de développement et de déploiement】

Environnement de développement : windows 7 x64 sp1 version anglaise

  visualstudio 2017# 🎜🎜#

Environnement de déploiement : instance Alibaba Cloud ecs serveur Windows 2012 x64

 iis 7.0

【Technologie requise】

# 🎜 🎜#asp.net webapi2

[Processus de mise en œuvre]

Utilisez asp.net webapi2 pour écrire une interface json de retour simple , afin de montrer que nous appelons des interfaces sur différents serveurs, nous avons généré trois services d'interface sous forme numérique et les avons déployés respectivement sur l'IIS des trois serveurs.

public ihttpactionresult gettest()
    {
       //throw new exception_dg_internationalization(1001);
       string ip = request.getipaddressfromrequest();
       return ok("test api . client ip address is -> "+ip+" the server is ===== 333 =====");
     }

Les numéros derrière les trois serveurs que j'ai déployés sont 111, 222, 333

Remarque : return ok est mon format de retour personnalisé, le code simple spécifique peut être directement renvoyé json ();

request.getipaddressfromrequest(); est ma méthode étendue pour obtenir une adresse IP. Veuillez la mettre en œuvre en fonction de votre propre situation.

【Test du système】

Après avoir généré les trois codes d'arrière-plan, nous les déployons respectivement sur trois serveurs.

Afin de garder les informations du serveur confidentielles, toutes mes adresses IP ci-dessous seront identifiées par ip_a, ip_b, ip_c

#🎜🎜 ## 🎜🎜#

Analyse dun exemple de configuration déquilibrage de charge NginxLe troisième est le serveur sur lequel nous allons déployer nginx :

Analyse dun exemple de configuration déquilibrage de charge Nginx

Après le déploiement, nous procédons avec nginx Configuration :

Téléchargez nginx : Analyse dun exemple de configuration déquilibrage de charge Nginx

Ensuite décompressez sur le serveur ip_c et ouvrez nginx.conf# dans la conf dossier 🎜🎜#

Analyse dun exemple de configuration déquilibrage de charge Nginx

Le contenu édité est le suivant

Analyse dun exemple de configuration déquilibrage de charge Nginx

Ensuite, nous démarrons le service : #🎜🎜 #

commande cmd pour basculer vers le répertoire racine de nginx

Analyse dun exemple de configuration déquilibrage de charge Nginx

#🎜 🎜#De cette façon, même si le service a démarré... Juste pour porter plainte, pourquoi ne pas dire que le service a démarré avec succès... Bon, ce n'est pas convivial !

Ensuite, nous ouvrons n'importe quel outil de test d'interface et exécutons la même requête trois fois : Analyse dun exemple de configuration déquilibrage de charge Nginx

Requête 1, Analyse dun exemple de configuration déquilibrage de charge Nginx

#🎜🎜 #

Demande Deux,

Analyse dun exemple de configuration déquilibrage de charge Nginx

Demande Trois ,

Analyse dun exemple de configuration déquilibrage de charge NginxOn constate que l'interface du service en arrière-plan appelée n'est pas la même pour chaque requête, ce qui garantit que dans un grand nombre de Lorsque les clients accèdent à la même adresse de serveur, la pression d'un serveur peut être allouée à plusieurs serveurs pour réaliser un é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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer