Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Wie erreicht Nginx einen Lastausgleich?

Wie erreicht Nginx einen Lastausgleich?

(*-*)浩
(*-*)浩Original
2019-11-01 10:25:175480Durchsuche

Nginx („Engine x“) ist ein leistungsstarker Web- und Reverse-Proxy-Server, der vom russischen Programmierer Igor Sysoev entwickelt wurde. Er ist auch ein IMAP/POP3/SMTP-Proxy-Server.

Wie erreicht Nginx einen Lastausgleich?

Bei hoher Verbindungsgleichzeitigkeit ist Nginx eine gute Alternative zum Apache-Server.

Lastausgleich: Der Lastausgleich ist auch eine häufig verwendete Funktion von Nginx. Wenn die Anzahl der Besuche pro Zeiteinheit eines Servers größer ist, ist der Druck auf den Server größer Sobald es seine eigene Ausdauerkapazität überschreitet, stürzt der Server ab. Um Serverabstürze zu vermeiden und Benutzern ein besseres Erlebnis zu bieten, verwenden wir Lastausgleich, um den Serverdruck zu verteilen. (Empfohlenes Lernen: nginx-Tutorial)

Wir können viele, viele Server erstellen, um einen Servercluster zu bilden. Wenn Benutzer die Website besuchen, greifen sie zuerst auf einen Zwischenserver zu und lassen diesen dann zwischen Server wird auf dem Server ausgeführt. Wählen Sie einen Server mit weniger Druck im Cluster aus und stellen Sie dann die Zugriffsanforderung an diesen Server.

Auf diese Weise wird bei jedem Besuch durch einen Benutzer sichergestellt, dass der Druck auf jedem Server im Servercluster tendenziell ausgeglichen wird, der Serverdruck aufgeteilt und ein Serverabsturz vermieden wird. Die Konfiguration des Lastausgleichs erfordert im Allgemeinen die gleichzeitige Konfiguration eines Reverse-Proxys und den Übergang zum Lastausgleich über den Reverse-Proxy.

nginx bietet die folgenden drei Lastausgleichsmechanismen und -methoden:

Round-Robin – Anforderungen werden im Round-Robin-Verfahren an Anwendungsserver verteilt.

am wenigsten verbunden – die nächste Anfrage wird dem Server mit der geringsten Anzahl aktiver Verbindungen zugewiesen.

IP-Hash – verwendet eine Hash-Funktion, um zu bestimmen, wo die nächste Anfrage basierend auf dem Server erfolgen soll IP-Adresse des Clients. An welchen Server verteilt werden soll.

Standard-Lastausgleichskonfiguration

http {
   upstream myapp1 {
       server srv1.example.com;
       server srv2.example.com;
       server srv3.example.com;
   }
  
   server {
       listen 80;
  
       location / {
           proxy_pass http://myapp1;
       }
   }
}

Das obige ist der detaillierte Inhalt vonWie erreicht Nginx einen Lastausgleich?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn