Quelles sont les différences entre HAProxy et Ngnix en mode proxy inverse?

Quelles sont les différences entre HAProxy et Nginx en ce qui concerne leurs capacités en tant que proxy inverse?

HAPROxy n'est vraiment qu'un équilibreur de charge / proxy inverse. Nginx est un serveur Web qui peut également fonctionner comme un proxy inverse.

Voici quelques différences:

HAPROxy:

  • TCP ainsi que HTTP proxying (SSL ajouté à partir de 1.5-dev12)
  • Plus d'options de limitation de taux
  • L'auteur répond aux questions ici sur Server Fault 😉

Nginx :

  • Supporte SSL directement
  • Est également un serveur de mise en cache

Chez Stack Overflow, nous utilisons principalement HAProxy avec nginx pour le déchargement de SSL, de sorte que HAProxy est ma recommandation.

J'utilise nginx pour HAProxy, mais uniquement pour la terminaison SSL.

HAProxy est un équilibreur de charge beaucoup plus réglable et administrable (selon mon expérience).

Je incorpore également le vernis pour la mise en cache des objets statiques. (En tant que backend spécifique de HAProxy)

Consultez cette question de défaut du serveur pour plus d'informations. Commander nginx / vernis / haproxy

Si nécessaire uniquement pour le compteur HA d'équilibrage de charge est mieux. Mais combiner à la fois nginix et HA proxy peut être plus utile, car nginix est rapide dans la fourniture de contenu statique, il servira toute demande de données statiques, puis envoie toute demande au proxy HA qui sert d'équilibreur de charge et demande d'envoi au serveur Web pour servir Demande en équilibrant la charge.