Nginx - Serveur en amont

Table des matières
Un serveur de en amont est un type de serveur auquel Nginx Il sert de proxy pour la connexion, c'est-à-dire Nginx Il filtre les demandes et ne lui envoie que celles qu'il peut traiter. Ces types de serveurs peuvent être dans une machine virtuelle, dans une machine physique différente ou même être des services démons dans un environnement UNIX en attente d'être appelé.
Cela signifie en pratique qu'il peut s'agir d'un serveur Apache configuré pour ne servir que des requêtes spécifiques sur un port TCP ou il peut s'agir d'un middleware qui interprète Rubis pour une demande de Rails. Ainsi Nginx il peut gérer les demandes initiales et être le proxy inverse pour les services.
Serveurs en amont uniques
Ce sont des serveurs qui ont un seul point de téléchargement comme indiqué par son nom, un exemple peut être le serveur Apache, qui dans la plupart des configurations que nous trouvons n'est pas optimisé pour servir plusieurs connexions simultanées, car lors de la recharge avec les modules pour servir des fichiers statiques, son efficacité diminue.
Entrer ici Nginx qui se charge de gérer les multiples connexions et ne transmet ainsi à Apache que les fichiers qu'il doit réellement interpréter, comme les fichiers de PHP.
Une configuration de base pourrait être la suivante :

Ce que nous voyons dans l'image est une configuration où Nginx transmettre les demandes directement à Apache, en optimisant la terminaison des connexions, cependant ce n'est pas aussi optimal que la configuration que nous verrons dans l'image suivante, où nous disons Nginx qui sert les fichiers statiques et ceux qui ne le sont pas, transmettez-les à Apache, avec ceci si une plus grande différence de performances est obtenue :

Comme il travaille?Le fonctionnement de ce processus est très simple, la directive try_files il testera s'il trouve et peut servir la requête du client, sinon, il la transmettra à Apache pour faire le traitement correspondant.
Plusieurs serveurs en amont
Nginx c'est aussi dans la capacité de travailler avec divers serveurs en amont dans le cas où le service pour lequel vous êtes proxy inverse il ne peut gérer que quelques connexions, évitant ainsi une surcharge de celles-ci.
Comment y parvenir ?Pour y parvenir, nous suivrons une structure similaire à ce que nous avons vu avec le unique en amont, seulement maintenant nous devons définir un bloc personnalisé avec les routes des différents serveurs puis configurer notre proxy_pass pour eux. Regardons un exemple simple :

Nous voyons comment nous définissons trois serveurs dans un bloc amont appelé application, puis dans notre bloc de serveur, nous faisons un proxy_pass au bloc d'application, ce qu'il va faire Nginx est d'utiliser le système de tournoi à la ronde pour servir les demandes au trois serveurs en amont que nous définissons, atteignant ainsi l'objectif; Davantage, Nginx il peut également gérer d'autres algorithmes d'équilibrage de charge.
A la fin de ce tutoriel, nous voyons une fois de plus comment Nginx Il possède des capacités qui en font une option très viable dans les environnements à forte demande.Avez-vous aimé et aidé ce tutoriel ?Vous pouvez récompenser l'auteur en appuyant sur ce bouton pour lui donner un point positif
wave wave wave wave wave