web-dev-qa-db-fra.com

HAProxy vs Nginx

Je cherchais à utiliser HAProxy et Nginx pour l’équilibrage de charge, et j’avais quelques questions:

  • Devrais-je utiliser JUST HAProxy sur Nginx pour le serveur proxy?
  • Y a-t-il une raison pour qu'HAProxy et Nginx soient installés sur le même serveur proxy?

Merci

17
Pat841

haproxy est un "équilibreur de charge" qu'il ne sait pas servir des fichiers ou du contenu dynamique. nginx est un serveur Web capable de nombreuses choses intéressantes. si vous avez seulement besoin d'équilibrer la charge + HA sur un troisième serveur Web, alors haproxy est suffisant. Si vous devez implémenter un contenu statique ou une logique dans le routage des demandes avant de les terminer sur un troisième serveur, vous aurez peut-être besoin de nginx.

La raison pour laquelle vous pouvez voir haproxy + nginx sur le même hôte est que cela vous permet de supprimer des instances nginx uniques tandis que haproxy continue de répondre aux demandes d'autres hôtes. Imaginez avoir un DNS RR utilisant des enregistrements A:

myapp.com IN A 1.1.1.1
myapp.com IN A 1.1.1.2

où 1.1.1.1 et 1.1.1.2 sont deux hôtes avec haproxy + nginx configurés pour équilibrer la charge entre eux. Maintenant, pour une raison quelconque, le nginx de votre 1.1.1.1 tombe en panne. Les navigateurs qui viennent à 1.1.1.1 sont toujours servis par haproxy sur celui-ci qui obtient à son tour les données de nginx de 1.1.1.2.

j'espère que ça aide

30
Michael Tabolsky

NGINX à côté de HAProxy ressemble à un 2CV à côté d'un Tesla ...

Avantages HAProxy :

  • Fournit une liste complète de 61 mesures différentes. Voir section 9 Pour une liste complète des statistiques disponibles.

  • La page d’état est beaucoup plus détaillée et conviviale que celle de Nginx.

  • Facilement en mesure de s'intégrer à des services de surveillance tiers (par exemple, Datadog)
  • PROTOCOLE IPV6, PROXY TRANSPARENT, SSL & SNI, HTTP2, API, Script LUA, courtier de connexion RDP, tables de contrôle, réplication de session multi-nœuds, protection DDOS & DOS ...

Inconvénients HAProxy :

  • Ne fournit pas d'autres fonctionnalités proposées par Nginx, telles que les fonctionnalités de serveur Web.

Avantages Nginx :

  • Nginx étant capable de faire bien plus que l’équilibrage de charge, il s’agit d’une solution beaucoup plus polyvalente.
  • Utile si vous avez besoin d'un équilibreur de charge ainsi que d'un serveur Web doté d'une capacité de mise en cache avancée, etc.
  • Il existe un module développé par la communauté pour une collecte de statistiques supérieure à celle proposée par défaut

Inconvénients Nginx:

  • Ne fournit que 7 métriques de statistiques représentant tous les sites du serveur. Il n'y a pas de métrique individuelle, par site disponible
  • La page d'état n'est pas conviviale et ne fournit pas beaucoup de détails
  • Possibilités d'intégration de surveillance tierces très limitées
0
flik