Каковы различия между HAProxy и Nginx, когда речь заходит об их возможностях в качестве обратного прокси?
Каковы различия между HAProxy и Nginx, когда речь заходит об их возможностях в качестве обратного прокси?
Ответы:
2019 обновление:
Это стабильные и зрелые продукты. HAProxy предназначен для балансировки нагрузки и лучше в этом, тогда как nginx является веб-сервером, который может выступать в качестве балансировщика нагрузки.
И то и другое:
HAProxy:
Nginx:
HAProxy - это бесплатное программное обеспечение с полностью открытым исходным кодом. Они зарабатывают деньги, продавая аппаратное устройство с предустановленной HAProxy.
Nginx является открытым ядром, и многие функции доступны только в платной версии. Примечательно, что ему не хватает страницы состояния и показателей мониторинга, что является большим НЕТ НЕТ для работы балансировщика нагрузки.
HAProxy - это просто балансировщик нагрузки / обратный прокси. Nginx - это веб-сервер, который также может работать как обратный прокси-сервер.
Вот некоторые отличия:
HAProxy:
Nginx :
В Stack Overflow мы в основном используем HAProxy с nginx для разгрузки SSL, поэтому HAProxy - моя рекомендация.
Я использую nginx для внешнего интерфейса HAProxy, но только для завершения SSL.
HAProxy - гораздо более настраиваемый и управляемый балансировщик нагрузки (по моему опыту).
Я также включил Varnish для кэширования статических объектов. (как особый бэкэнд HAProxy)
Смотрите этот вопрос о сбое сервера для получения дополнительной информации. Заказ nginx / лака / haproxy
При необходимости только для балансировки нагрузки лучше прокси HA. Но сочетание nginix и HA-прокси может быть более полезным, поскольку nginix быстро предоставляет статический контент, он будет обслуживать все запросы статических данных, а затем отправлять все запросы HA-прокси, которые служат для балансировки нагрузки, и отправлять запросы на веб-сервер для обслуживания. запрос по балансировке нагрузки.