Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 27491|Antwort: 2

[Web] Praktische Konfiguration des NGINX High Availability Load Balancing

[Link kopieren]
Veröffentlicht am 14.06.2020 11:50:26 | | | |
Ich nutze seit über 6 Jahren das Load Balancing von Alibaba Cloud und NGINX seit über 6 Jahren.

Lastverteilung baut auf bestehenden Netzwerkstrukturen auf und bietet eine kostengünstige, effektive und transparente Möglichkeit, die Bandbreite von Netzwerkgeräten und Servern zu skalieren, den Durchsatz zu erhöhen, die Datenverarbeitungsfähigkeiten des Netzwerks zu verbessern sowie die Flexibilität und Verfügbarkeit des Netzwerks zu verbessern.
Lastverteilung bedeutet, dass sie auf mehrere Betriebssysteme verteilt wird, wie Webserver, FTP-Server, unternehmenskritische Anwendungsserver und andere missionskritische Server, um gemeinsam Arbeitsaufgaben zu erledigen.

Kurz gesagt: Es verteilt mehrere Anfragen an verschiedene Server im Backend, um den Druck auf jeden Server zu verringern und eine hohe Verfügbarkeit zu erreichen; selbst wenn ein Server auflegt, hat das keine Auswirkung.

Zuallererst

Ich habe node.js nativ installiert und den HTTP-Server installiert, um zwei Webcontainer zu emulieren. (Verwenden Sie IIS oder implementieren Sie das HTTP-Protokoll mit Ihrem eigenen Code)

Nach der Installation node.js führen Sie folgenden Befehl aus:

Windows installieren Sie den HTTP-Server in NodeJS und aktivieren Sie den HTTP-Server
https://www.itsvse.com/thread-6838-1-1.html

Simuliere zwei Backend-Standorte

Ich habe zwei neue Ordner erstellt, site1 und site2, unter dem E:\wwwroot-Verzeichnis, jeweils mit einer index.html Datei.



Der Inhalt ist: Index 1 by:itsvse.com und Index 2 by:itsvse.com


Dann hören Sie die beiden HTTP-Ports mit folgendem Befehl an, um die beiden Seiten zu öffnen.

Versuche, beide Stationen separat zu erreichen:Der Hyperlink-Login ist sichtbar. Der Hyperlink-Login ist sichtbar.Die Darstellungen sind wie folgt:



NGINX-Lastverteilungskonfiguration

Laden Sie die Windows-Version von nginx unter folgender Adresse herunter:Der Hyperlink-Login ist sichtbar.

Nach dem Download entpacken Sie es in das Verzeichnis E:\wwwroot\nginx-1.18.0. Ändern Sie die Datei E:\wwwroot\nginx-1.18.0\conf\nginx.conf wie folgt:



Starte das nginx-Programm mit folgendem Befehl:



nginx -s Stopp Schnellabschaltung
nginx -s Quit Graceful Shutdown
nginx-s neu laden, Konfiguration ändern, neue Worker-Prozesse mit einer neuen Konfiguration starten, alte Worker-Prozesse elegant abschalten
nginx -s Logdateien neu öffnen

Zugriff auf die nginx-Lastverteilungsseite über einen Browser:Der Hyperlink-Login ist sichtbar.



Wir aktualisieren und überprüfen viele Male erneut und stellen fest, dass der zurückgegebene Inhalt jedes Mal unterschiedlich ist, und man sieht, dass nginx unterschiedliche Anfragen an verschiedene HTTP-Dienste im Backend verteilt.Wenn wir versuchen, die Site1-Seite zu stoppen, sehen wir, dass dies unseren normalen Zugriff nicht beeinträchtigt, und nginx leitet alle Anfragen an die Site2-Seite weiter

Nginx-Lastenausgleich-Konfigurationsstatus
ZustandÜberblick
UntenDer aktuelle Server nimmt vorerst nicht an der Lastverteilung teil
BackupReservierte Backup-Server werden aktiviert, wenn alle anderen Server aufgehängt sind
max_failsDie Anzahl der zugelassenen fehlgeschlagenen Anfragen: Wenn die Anzahl der fehlgeschlagenen Anfragen das Limit überschreitet, wird der Server nach fail_timeout Zeit aus dem virtuellen Servicepool gelöscht
fail_timeoutNach einem max_fails Ausfall pausiert der Dienst die Zeit, max_fails der fail_timeout Wert festgelegt werden muss
max_connsBegrenze die maximale Anzahl der Verbindungen für verschiedene Serverhardware-Konfigurationen


Nginx Lastverteilungs-Planungsrichtlinie

PlanungsalgorithmenÜberblick
PollotMan kann einzeln abfragen, die Standardmethode
GewichtBei gewichteten Umfragen gilt: Je höher das Gewicht, desto höher ist die Verteilungschance
ip_hashDie Zuweisung von Hash-Ergebnissen aus der zugreifenden IP führt dazu, dass Anfragen von derselben IP-Adresse auf einen festen Hintergrundserver zugreifen
url_hashZuweisen Sie entsprechend dem Hash-Ergebnis der besuchten URL
least_connDie Mindestanzahl an Links, der Server mit weniger Links wird zugewiesen
Hash-SchlüsselwertHash-benutzerdefinierter Schlüssel


Weitere Informationen zu nginx-Konfigurationen finden Sie unter:Der Hyperlink-Login ist sichtbar.





Vorhergehend:Nginx-Log-Splitting und -Löschung
Nächster:Das Konzept und der Unterschied zwischen ITO, BPO, KPO und den drei
 Vermieter| Veröffentlicht am 16.03.2021 15:48:20 |
nginx: [emerg] CreateFile() "C:\360安全浏览器下载\nginx-1.18.0/conf/nginx.conf" failed (1113: No mapping for the Unicode character exists in the target multi-byte code page)
nginx: configuration file C:\360安全浏览器下载\nginx-1.18.0/conf/nginx.conf test failed


nginx-Pfade können nicht von Chinesen erstellt werden
 Vermieter| Veröffentlicht am 10.01.2023 19:31:52 |
【Practical Action】Web Hochverfügbarkeits-Tutorial für Keepalive und Nginx
https://www.itsvse.com/thread-10118-1-1.html
Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com