Ventajas de usar Nginx o HA Proxy como Load Balancer

9

En nuestro entorno, usamos Nginx y HA Proxy en diferentes clústeres. ¿Hay ventajas de usar uno sobre el otro?

O, ¿cuál es la mejor manera de equilibrar la carga de un clúster de servidores LAMP básico?

Jason
fuente

Respuestas:

8

(No me refiero a la "mejor manera de equilibrar la carga", ya que obviamente es una situación específica).

Tanto HAProxy como nginx son excelentes opciones para equilibradores de carga HTTP de código abierto en Unix. En un nivel muy alto, las ventajas y desventajas que vienen a la mente son en mi humilde opinión:

nginx:

  • Puede hacer la descarga SSL (a menudo un problema).
  • Tiene un amplio conjunto de módulos de procesamiento de contenido, es decir, reescritura de encabezados, compresión de contenido, etc.
  • A veces puede ser 'el único HTTPd que necesita', lo que simplifica la administración si no necesita ningún otro HTTPd.
  • Más extensible con complementos, fx para enrutar el tráfico.

HAProxy:

  • Puede ofrecer un rendimiento de servidor único mayor que nginx (especialmente cuando se ejecuta en modo TCP, se ha demostrado que 10 gbit / s ).
  • En mi humilde opinión, es más fácil de poner en marcha para configuraciones básicas de equilibrio de carga HTTP.
  • Los cambios son un poco menos, especialmente las ramas estables un poco más antiguas a menudo pasan un tiempo sin necesidad de actualizaciones de seguridad y estabilidad.

Pero como se dijo, ambas son excelentes opciones. Elija el que le resulte más cómodo.

Jesper M
fuente
1
La compresión es una gran ventaja para nginx, así que terminé yendo: haproxy + nginx para tener una conmutación por error simple (haproxy) y compresión gzip (nginx).
Alexis Lê-Quôc
2

Eso realmente depende de lo que quieras hacer.

Nginx puede dividir la carga entre clústeres, así como enrutar dominios específicos a diferentes clústeres. Nuestro rendimiento nginx ha sido satisfactorio. Es más como un enrutador de carga.

Para haproxy, sé que consulta el estado del servidor constantemente y lo comprobaré antes de dirigirle el tráfico. También tiene una interfaz donde puede ver estadísticas. nginx No creo que haga esto en ninguna de las puntuaciones.

Daniel Baker
fuente
1

Usamos nginx como servidor web y estamos muy contentos con él. Nunca volveré a Apache. La desventaja es si tiene la intención de ejecutar PHP; requiere un poco de piratería informática para que funcione bajo fastCGI.

¡No olvides poner Varnish en el lugar para el almacenamiento en caché! ¡Ese simple paso resuelve muchos de los problemas de los sitios que reciben Slashdotted / Fireballed!

gWaldo
fuente
0

No soy un experto en esto, pero que yo sepa, HAProxy tiene un mejor rendimiento y es más configurable en cuanto a cómo hace el equilibrio de carga.

Ahora podría lanzarle una lista de comparaciones y puntos de referencia, pero en su lugar solo vincularé los resultados de Google https://encrypted.google.com/search?q=nginx+vs+haproxy

No disponible
fuente