Nginx peut être configuré pour proxy plusieurs serveurs. Lorsqu'un serveur tombe en panne. Le système reste disponible. Parlons de quelques éléments de configuration couramment utilisés.
configuration amont :
Ajoutez simplement la configuration amont sous la configuration http :
upstream nodes { server 192.168.10.1:8668; server 192.168.10.2:8668; }
upstream envoie des requêtes au serveur amont configuré selon la méthode d'interrogation par défaut. Si le serveur en amont raccroche, il peut être automatiquement supprimé sans intervention manuelle. Cette méthode est simple et rapide. Mais si la configuration du serveur en amont est déséquilibrée, le problème ne peut pas être résolu. Nginx a donc de nombreux autres éléments de configuration. Présentons-les un par un.
Configuration du poids :
Le poids est proportionnel au nombre de requêtes et est principalement utilisé lorsque la configuration du serveur en amont est déséquilibrée. Dans la configuration ci-dessous, le volume de requêtes de la machine 192.168.10.2 est le double du volume de requêtes de la machine 192.168.10.1.
upstream nodes { server 192.168.10.1:8668 weight=5; server 192.168.10.2:8668 weight=10; }
Configuration ip_hash :
Chaque requête est allouée en fonction du résultat de hachage de l'IP demandée. De cette façon, chaque requête est fixée sur un serveur en amont, ce qui peut résoudre le problème des sessions IP sur le même serveur.
upstream nodes { ip_hash; server 192.168.10.1:8668; server 192.168.10.2:8668; }
configuration équitable :
Répartir les requêtes en fonction du temps de réponse du serveur amont. Priorisez l’allocation avec des temps de réponse courts.
upstream nodes { server 192.168.10.1:8668; server 192.168.10.2:8668; fair; }
Configuration url_hash :
Distribuez les requêtes en fonction du résultat de hachage de l'URL visitée, afin que chaque URL soit dirigée vers le même serveur en amont. Remarque : Ajoutez une instruction de hachage en amont. D'autres paramètres tels que le poids ne peuvent pas être écrits dans l'instruction du serveur hash_method est l'algorithme de hachage utilisé.
upstream nodes { server 192.168.10.1:8668; server 192.168.10.2:8668; hash $request_uri; hash_method crc32; }
down : Indique que le serveur actuel ne participe pas à l'équilibrage de charge.
max_fails : le nombre de requêtes ayant échoué est par défaut 1.
fail_timeout : Le temps de pause des requêtes vers ce serveur après des échecs max_fails.
sauvegarde : lorsque toutes les autres machines autres que de sauvegarde sont en panne ou occupées, demandez la machine de sauvegarde. Cette machine aura donc le moins de pression.
Pour plus d'articles techniques liés à Nginx, veuillez visiter la colonne Tutoriel d'utilisation de Nginx pour apprendre !
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!