Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Der Unterschied zwischen Nginx und LVS

Der Unterschied zwischen Nginx und LVS

(*-*)浩
(*-*)浩Original
2019-06-04 16:53:104247Durchsuche

Sowohl lvs als auch nginx können als Multi-Machine-Load-Lösungen verwendet werden. Sie haben jeweils ihre eigenen Vor- und Nachteile. In der Produktionsumgebung muss die tatsächliche Situation sorgfältig analysiert und genutzt werden.

Der Unterschied zwischen Nginx und LVS

Vorteile von lvs:

1. Starke Belastungsbeständigkeit, weil die Logik, wie lvs funktioniert, sehr einfach ist Arbeitet auf Schicht 4 der Netzwerkschicht und wird nur zur Anforderungsverteilung verwendet. Es gibt keinen Datenverkehr, sodass grundsätzlich nicht zu viel über Effizienz nachgedacht werden muss. LVS fällt im Allgemeinen selten aus. Selbst wenn dies der Fall ist, wird dies normalerweise durch Probleme an anderer Stelle (z. B. Speicher, CPU usw.) verursacht, die LVS-Probleme verursachen.

2. Konfigurierbarkeit, dies ist normalerweise ein großer Nachteil und auch ein großer Vorteil, da es nicht viele konfigurierbare Optionen gibt, so dass Sie sie, abgesehen vom Hinzufügen oder Entfernen von Servern, nicht oft anfassen müssen, was sehr wichtig ist Reduziert das Risiko menschlicher Fehler.

3. Stabile Arbeit, da die Provinz über einen starken Lastwiderstand verfügt, sodass eine hohe Stabilität selbstverständlich ist. Darüber hinaus verfügen verschiedene LVS über vollständige Hot-Backup-Lösungen mit zwei Maschinen, sodass Sie sich keine Sorgen um den Equalizer selbst machen müssen Welche Probleme treten auf? Wenn ein Knoten ausfällt, erkennt LVS ihn automatisch, sodass das Gesamtsystem sehr stabil ist.

4. Kein Verkehr, lvs verteilt nur Anfragen und der Verkehr geht nicht von selbst aus, sodass Sie damit eine Leitungsumleitung durchführen können. Es gibt keinen Datenverkehr und die E/A-Leistung des Equalizers wird durch großen Datenverkehr nicht beeinträchtigt.

5.lvs kann grundsätzlich alle Anwendungen unterstützen, da Green Work auf Layer 4 liegt, kann es den Lastausgleich für fast alle Anwendungen, einschließlich http, Datenbanken, Chatrooms usw., ermöglichen.

Außerdem ist lvs nicht vollständig in der Lage, Knotenfehler zu identifizieren. Wenn beispielsweise ein Knoten im Cluster nicht mit VIP konfiguriert ist, ist in diesem Fall der gesamte Cluster unbrauchbar , die wrr-Zuweisungsmethode geht verloren Eine Maschine. Dieses Problem wird derzeit noch weiter getestet. Daher ist es besser, bei der Verwendung von LVS vorsichtiger zu sein.

Die Ergebnisse des Vergleichs zwischen Nginx und LVS:

1.nginx arbeitet auf der 7. Schicht des Netzwerks, sodass es Offloading-Strategien für die http-Anwendung selbst implementieren kann B. Für Domänennamen, Verzeichnisstrukturen usw. verfügt lvs im Vergleich dazu nicht über solche Funktionen, sodass Nginx allein auf dieser Grundlage in weit mehr Situationen als lvs verwendet werden kann, aber diese nützlichen Funktionen von Nginx machen es anpassbarer als LVS, daher muss man es oft anfassen. Der zweite Vorteil von LVS ist, dass die Wahrscheinlichkeit menschlicher Probleme umso größer ist, je mehr man es anfasst.

2.Nginx ist weniger vom Netzwerk abhängig, solange der Ping erfolgreich ist und der Webseitenzugriff normal ist. Wenn es sich um einen Knoten handelt, kann Nginx auch zwischen internen und externen Netzwerken unterscheiden das sowohl interne als auch externe Netzwerke hat, was einem einzelnen Computer mit einer Backup-Leitung entspricht; LVS ist stärker von der Netzwerkumgebung abhängig. Derzeit befindet sich der Server im selben Netzwerksegment und LVS verwendet den Direktmodus, um den Datenverkehr umzuleiten Die Wirkung ist besser gewährleistet. Beachten Sie außerdem, dass LVS mindestens eine IP beim Hosting-Anbieter beantragen muss, um als visuelle IP verwendet zu werden. Es scheint, dass IPs aus derselben Provinz nicht als VIP verwendet werden können. Um ein guter LVS-Administrator zu sein, müssen Sie wirklich viel Wissen über die Netzwerkkommunikation erlernen. Es ist nicht mehr so ​​einfach wie http.

3.nginx ist relativ einfach zu installieren und zu konfigurieren und auch sehr bequem zu testen, da es grundsätzlich Fehler in Protokollen ausdrucken kann. Die Installation, Konfiguration und das Testen von LVS dauern relativ lange, da LVS, wie oben erwähnt, stark vom Netzwerk abhängig ist. In vielen Fällen ist eine erfolgreiche Konfiguration eher auf Netzwerkprobleme als auf Konfigurationsprobleme zurückzuführen Problem, es muss entsprechend gelöst werden. Es wird viel problematischer sein.

4.nginx hält auch hoher Belastung stand und ist stabil, aber die Belastung ist sehr gering und die Stabilität ist schlecht. Es gibt mehrere Ebenen von lvs: Nginx verarbeitet den gesamten Datenverkehr und ist daher durch Maschinen-E/A begrenzt Konfiguration; es gibt auch eigene Fehler Es ist immer noch unvermeidbar; Nginx verfügt nicht über eine vorgefertigte Hot-Backup-Lösung für zwei Maschinen, daher ist die Ausführung auf einer einzelnen Maschine immer noch relativ riskant und es ist schwierig, etwas über eine einzelne Maschine zu sagen.

5.nginx kann interne Serverfehler wie Statuscodes, Zeitüberschreitungen usw. erkennen, die vom Server zurückgegeben werden, der Webseiten verarbeitet, und sendet Anforderungen, die Fehler zurückgeben, erneut an einen anderen Knoten. Derzeit kann ldirectd in lvs auch die Überwachung der internen Bedingungen des Servers unterstützen, aber das Prinzip von lvs verhindert, dass Anfragen erneut gesendet werden. Was das erneute Senden der Anfrage betrifft, wenn der Benutzer beispielsweise eine Datei hochlädt und der Knoten, der den Upload verarbeitet, während des Upload-Vorgangs fehlschlägt, schaltet Nginx den Upload zur erneuten Verarbeitung auf einen anderen Server um und lvs wird direkt getrennt kann es ärgerlich sein, eine große oder wichtige Datei hochzuladen.

6. Die asynchrone Verarbeitung von Anforderungen durch Nginx kann dazu beitragen, die Last des Knotenservers zu reduzieren. Wenn Sie Apache zur Bereitstellung direkter externer Dienste verwenden, belegt der Apache-Server bei vielen Schmalbandverbindungen eine große Menge Wenn Nginx als Apache-Proxy fungiert, werden diese Schmalbandverbindungen von Nginx blockiert und zu viele Anfragen sammeln sich nicht auf Apache an, wodurch die Speichernutzung erheblich reduziert wird. Die Verwendung von Squid hat in dieser Hinsicht den gleichen Effekt. Auch wenn Squid selbst so konfiguriert ist, dass es nicht zwischenspeichert, ist es für Apache dennoch eine große Hilfe. LVS verfügt nicht über diese Funktionen und ist daher nicht vergleichbar.

Nginx kann auch als Mid-Level-Proxy verwendet werden. Auf dieser Ebene hat Nginx im Grunde keine Konkurrenz. Lighttpd verfügt jedoch derzeit nicht über die volle Funktionalität von Nginx Die Konfiguration ist nicht so klar und leicht zu lesen. Darüber hinaus ist auch die IP-Adresse des Agenten der mittleren Ebene wichtig, sodass ein VIP und LVS für die Agentenbranche der mittleren Ebene die perfekteste Lösung ist.

Die spezifische Anwendung muss im Detail analysiert werden (tägliche PV

Weitere technische Artikel zum Thema Nginx finden Sie in der Spalte Tutorials zur Nginx-Nutzung, um mehr zu erfahren!

Das obige ist der detaillierte Inhalt vonDer Unterschied zwischen Nginx und LVS. 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