In unserer Umgebung verwenden wir sowohl Nginx als auch HA Proxy auf verschiedenen Clustern. Gibt es Vorteile der Verwendung übereinander?
Oder wie geht man am besten zum Lastenausgleich eines einfachen LAMP-Serverclusters?
(Ich gehe nicht auf den "besten Weg zum Lastausgleich" ein, da dies offensichtlich situationsspezifisch ist.)
Sowohl HAProxy als auch Nginx eignen sich hervorragend für Open-Source-HTTP-Load-Balancer unter Unix. Auf einem sehr hohen Niveau sind IMHO die Vor- und Nachteile, die zuerst in den Sinn kommen:
Nginx:
HAProxy:
Aber wie gesagt, beide sind eine ausgezeichnete Wahl. Wählen Sie die aus, mit der Sie sich am wohlsten fühlen.
Das hängt wirklich davon ab, was Sie tun möchten.
Nginx kann die Last zwischen Clustern aufteilen und bestimmte Domänen an verschiedene Cluster weiterleiten. Unsere Nginx-Leistung war zufriedenstellend. Es ist eher wie ein Load Router.
Ich weiß, dass Haproxy den Serverstatus ständig abfragt und den Server überprüft, bevor der Datenverkehr an ihn weitergeleitet wird. Es hat auch eine Oberfläche, über die Sie Statistiken anzeigen können. nginx Ich glaube nicht, dass dies in beiden Punkten der Fall ist.
quelle
Wir verwenden Nginx als Webserver und sind sehr zufrieden damit. Ich werde nie wieder zu Apache zurückkehren. Der Nachteil ist, wenn Sie beabsichtigen, PHP auszuführen. Es erfordert einige Hackery-Jiggery, damit es unter fastCGI funktioniert.
Vergessen Sie nicht, den Lack zum Zwischenspeichern einzusetzen! Dieser einfache Schritt löst viele Probleme, wenn Websites mit Slashdotted / Fireballed versehen werden!
quelle
Ich bin kein Experte in diesem Bereich, aber meines Wissens hat HAProxy eine bessere Leistung und ist in Bezug auf den Lastausgleich besser konfigurierbar.
Jetzt könnte ich eine Liste mit Vergleichen und Benchmarks auf Sie werfen, aber ich werde stattdessen nur die Google-Ergebnisse mit https://encrypted.google.com/search?q=nginx+vs+haproxy verknüpfen
quelle