HAProxy против Nginx
Я смотрел на использование HAProxy и Nginx для балансировки нагрузки, и у меня были некоторые вопросы:
- Должен ли я использовать JUST HAProxy над Nginx для прокси-сервера?
- Есть ли какая-нибудь причина для установки HAProxy и Nginx на один и тот же прокси-сервер?
Спасибо
Ответы
Ответ 1
haproxy - это "балансировщик нагрузки", который он не знает, чтобы обслуживать файлы или динамический контент. nginx - это веб-сервер, способный много интересного. если вам нужно только загрузить баланс + HA на какой-то третий веб-сервер, то достаточно haproxy. если вам нужно реализовать некоторый статический контент или какую-либо логику в маршрутизации запросов до их завершения на третьем сервере, вам может понадобиться nginx.
Причина, по которой вы можете видеть, что haproxy + nginx на том же хосте - это то, что он позволяет сбрасывать отдельные экземпляры nginx, в то время как haproxy продолжает обслуживать запросы от других хостов. Представьте, что у вас есть RR DNS, используя записи A:
myapp.com IN A 1.1.1.1
myapp.com IN A 1.1.1.2
где 1.1.1.1 и 1.1.1.2 являются двумя хостами с haproxy + nginx, настроенными для балансировки между ними. Теперь по какой-то причине ваш 1.1.1.1 nginx идет вниз. Браузеры, которые приходят к 1.1.1.1, все еще обслуживаются haproxy на нем, который, в свою очередь, получает данные от 1.1.1.2 nginx.
надеюсь, что это поможет
Ответ 2
NGINX рядом с HAProxy выглядит как 2CV рядом с Tesla...
Преимущества HAProxy:
Недостатки HAProxy:
- Не предоставляет другие функции, которые предлагает Nginx, такие как возможности веб-сервера
Преимущества Nginx:
- Поскольку Nginx способен делать гораздо больше, чем балансировка нагрузки, это гораздо более универсальное решение.
- Полезно, если вам требуется балансировщик нагрузки, а также веб-сервер с расширенными возможностями кэширования и многое другое.
- Существует разработанный сообществом модуль для сбора большей статистики, чем предлагается по умолчанию.
Недостатки Nginx:
- Предоставляет только 7 показателей статистики, которые представляют все сайты на сервере. Индивидуальные показатели для каждого сайта отсутствуют
- Страница статуса не является удобной для пользователя и не предоставляет много деталей
- Очень ограниченные возможности интеграции стороннего мониторинга