Respuestas:
(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:
HAProxy:
Pero como se dijo, ambas son excelentes opciones. Elija el que le resulte más cómodo.
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.
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!
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