Zalety używania Nginx lub HA Proxy jako modułu równoważenia obciążenia

9

W naszym środowisku mamy zarówno Nginx, jak i HA Proxy w różnych klastrach. Czy są zalety używania jednego nad drugim?

Lub jaki jest najlepszy sposób równoważenia obciążenia podstawowego klastra serwerów LAMP?

Jason
źródło

Odpowiedzi:

8

(Nie przechodzę do „najlepszego sposobu równoważenia obciążenia”, ponieważ jest to oczywiście specyficzne dla konkretnej sytuacji).

Zarówno HAProxy, jak i nginx są doskonałym wyborem do równoważenia obciążenia HTTP typu open source w systemie Unix. Na bardzo wysokim poziomie zalety i wady, które przychodzą na myśl, to IMHO:

nginx:

  • Może wykonać odciążanie SSL (często biggie).
  • Posiada bogaty zestaw modułów przetwarzania treści, tj. Przepisywanie nagłówków, kompresja treści itp.
  • Czasami może być „jedynym HTTPd, którego potrzebujesz”, co upraszcza administrację, jeśli nie potrzebujesz żadnych innych HTTPd.
  • Bardziej rozszerzalny z wtyczkami, FX dla routingu ruchu.

HAProxy:

  • Może oferować wyższą wydajność pojedynczego serwera niż nginx (szczególnie, gdy działa w trybie TCP, wykazano szybkość 10 Gb / s ).
  • IMHO jest prostszy w uruchomieniu i konfiguracji podstawowych ustawień równoważenia obciążenia HTTP.
  • Zmienia się nieco mniej, zwłaszcza nieco starsze stabilne gałęzie często odchodzą na chwilę bez potrzeby aktualizacji zabezpieczeń i stabilności.

Ale jak już wspomniano, oba są doskonałymi wyborami. Wybierz ten, w którym czujesz się najlepiej.

Jesper M.
źródło
1
Kompresja jest dużym plusem dla nginx, więc skończyłem: haproxy + nginx, aby mieć proste przełączanie awaryjne (haproxy) i kompresję gzip (nginx).
Alexis Lê-Quôc
2

To naprawdę zależy od tego, co chcesz zrobić.

Nginx może rozdzielać obciążenia między klastry, a także kierować określone domeny do różnych klastrów. Nasza wydajność nginx jest zadowalająca. To bardziej jak router obciążenia.

W przypadku haproxy wiem, że stale sprawdza stan serwera i sprawdzi serwer przed skierowaniem do niego ruchu. Ma również interfejs, w którym można przeglądać statystyki. nginx Nie sądzę, że robi to w obu punktach.

Daniel Baker
źródło
1

Używamy nginx jako serwera WWW i jesteśmy z niego bardzo zadowoleni. Nigdy nie wrócę do Apache. Minusem jest to, że chcesz uruchomić PHP; wymaga trochę hackery-jiggery, aby działało pod fastCGI.

Nie zapomnij umieścić Lakieru na miejscu do buforowania! Ten prosty krok rozwiązuje wiele problemów związanych z witrynami Slashdotted / Fireballed!

gWaldo
źródło
0

Nie jestem ekspertem w tej dziedzinie, ale o ile wiem, HAProxy ma lepszą wydajność i jest bardziej konfigurowalny w zakresie równoważenia obciążenia.

Teraz mógłbym rzucić na ciebie listę porównań i testów porównawczych, ale po prostu połączę wyniki wyszukiwania Google zamiast https://encrypted.google.com/search?q=nginx+vs+haproxy

Niedostępne
źródło