Переваги використання Nginx або HA Proxy як балансира завантаження


9

У нашому середовищі ми використовуємо як Nginx, так і HA Proxy на різних кластерах. Чи є переваги використання одного над іншим?

Або який найкращий спосіб вирішити питання щодо навантаження, врівноважуючи базовий кластерний сервер LAMP?

Відповіді:


8

(Я не збираюся "найкращим способом завантажувати баланс", оскільки, очевидно, ситуація специфічна.)

І HAProxy, і nginx - чудовий вибір балансирів навантаження HTTP з відкритим кодом та Unix. На дуже високому рівні плюси і мінуси, які приходять першими на думку, - це ІМХО:

nginx:

  • Може робити розвантаження SSL (часто буває великим).
  • Має багатий набір модулів обробки вмісту, тобто перезапис заголовка, стиснення вмісту тощо.
  • Іноді може бути "єдиним необхідним HTTPd", що робить адміністрацію більш простою, якщо вам не потрібні інші HTTPd.
  • Більше розширення за допомогою плагінів, fx для маршрутизації трафіку.

HAProxy:

  • Може запропонувати більш високу продуктивність одного сервера, ніж nginx (особливо при запуску в режимі TCP, було продемонстровано 10 гбіт / с ).
  • IMHO простіший в роботі та запуску для базових налаштувань балансування звичайного HTTP.
  • Зміни дещо менше, особливо трохи старші стабільні гілки часто йдуть на деякий час, не потребуючи оновлень безпеки та стабільності.

Але, як було сказано, обидва - чудовий вибір. Виберіть ту, яка вам найбільше комфортна.


1
Стиснення - великий плюс для nginx, тому я закінчив: haproxy + nginx для простого відмови (haproxy) та gzip-стиснення (nginx).
Alexis Lê-Quôc

2

Це дійсно залежить від того, що ви хочете зробити.

Nginx може розділяти навантаження між кластерами, а також маршрутизувати конкретні домени до різних кластерів. Наші показники nginx були задовільними. Це більше схоже на маршрутизатор завантаження.

Для haproxy я знаю, що він запитує стан сервера постійно і перевірятиме сервер, перш ніж спрямовувати на нього трафік. Він також має інтерфейс, де можна переглянути статистику. nginx Я не думаю, що це робить на жодному з балів.


1

Ми використовуємо nginx як веб-сервер і дуже задоволені цим. Я ніколи не повертаюся до Apache. Мінус - якщо ви маєте намір запустити PHP; для роботи в режимі fastCGI потрібні певні хакерські джиггери.

Не забудьте поставити лак на місце кешування! Цей простий крок вирішує безліч проблем сайтів, котрі є Slashdotted / Fireballed!


0

Я не фахівець з цього питання, але, наскільки я знаю, HAProxy має кращі показники роботи і є більш налаштованим у виконанні балансування навантаження.

Тепер я можу перекинути на вас список порівнянь та орієнтирів, але я просто зв’яжу результати Google, а не https://encrypted.google.com/search?q=nginx+vs+haproxy

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.