HAProxy, NGINX ou Traefik ? Quel reverse proxy choisir ?

Les reverse proxy HAProxy, NGINX et Traefik s'affrontent !

Entre HAProxy, NGINX ou Traefik, quel Reverse Proxy (proxy inversé) choisir en 2020 ? Certains les appellent aussi les Load Balancers, mais leurs fonctions vont maintenant bien au-delà. Tout d’abord, il ne s’agit pas ici d’un véritable comparatif, dans le sens je n’ai pas pris le temps de comparer leurs fonctionnalités. Mais plutôt un partage d’expérience et si certains d’entre vous souhaitent exprimer leur point de vue, cette page s’enrichira.

Tout d’abord, j’ai commencé à utiliser NGINX comme reverse proxy avec l’utilisation de container Docker. Simple, rapide, léger et une gestion du cache performante pour les fichiers statiques. Seulement avec le temps, j’ai rencontré des limites dans la stratégie de Load Balancing, sa capacité à « monitorer ». En fait avec le temps, le service gratuit de Nginx nous pousse vers l’offre payante de Nginx+. Aujourd’hui, j’ai besoin d’un Reverse Proxy fiable, rapide, avec une stratégie de Load Balacing fine et facile à mettre en place.

HAProxy, NGINX ou Traefik ?

En fait, NGINX a très bien répondu à mon besoin au lancement des projets. Et l’éditeur le sait bien ! Il me donne un avant-goût de sa solution payante NGINX+ et espère qu’avec la montée en puissance des projets, je passe à l’offre payante NGINX+. Je comprends très bien ça, c’est une stratégie commerciale très fréquente.

Seulement, HAProxy offre ces fonctionnalités gratuitement. La stratégie de Load Balancing dispose de nombreuses options. Des statistiques par Backend, une reconfiguration à la volée, l’intégration de Docker et surtout un point essentiel dans mon cas, des performances au top ! Enfin, HAProxy dispose d’une page de monitoring complète avec des informations pertinentes et utiles. Alors que Nginx ne dispose pas vraiment d’outils de monitoring dans sa version gratuite. Enfin HAProxy dispose d’une page Github avec une communauté active, c’est un gage de confiance. Mais HAProxy dispose aussi d’une version payante, vous trouverez plus détails sur les différences entre HAProxy enterprise et HAProxy community avec ce lien.

Mais NGINX et HAProxy ont un autre concurrent, plus jeune, qui les attaquent sous un angle différent.

Traefik, le nouveau reverse proxy pour Docker et Kubernetes

Traefik est un projet assez jeune qui s’adresse directement à ceux qui font tourner leurs applications dans des conteneurs. C’est un équilibreur de charge (Load Balanceur) associé à des méthodes et des outils de découverte de services, une reconfiguration à la volée, des logs complets et un système de monitoring modernes. Tous les éléments essentiels pour maintenir facilement et efficacement un ensemble de services ou micro-services.

Enfin Traefik s’améliore d’année en année. Mais il est encore difficile de départager HAProxy et Traefik, HAProxy offre des performances sans égal, ce qui pour des sites à fort trafic est une donnée essentielle. Traefik est passé à la version 2, malgré cela les performances sont toujours en retrait par rapport à HAProxy comme le montre ces Benchmark de Reverse Proxy. Ce qui ne vaut pas dire que Traefik doit être écarté, il a malgré tout de nombreux avantages. Peut-être qu’avec le temps, ses performances s’amélioreront encore.

Pour conclure, j’ai tendance à préférer Traefik, pour ses fichiers de configuration, la logique de son paramétrage et l’intégration de Docker / Kubernetes. Mais surtout Traefik devient la solution idéale lorsque je charge/décharge des containers, c’est le seul qui me permet de gérer simplement les ports dynamiquement. Seulement, les performances sont un véritable frein, j’utilise pour l’instant les deux, HAProxy reste utiliser pour la majorité des projets et Traefik est de plus en plus présent dans les stacks, surtout lorsque les containers se charge/décharge dynamiquement. Concernant NGINX en tant que Proxy, je l’utilise de moins en moins, mais il reste une très bonne solution en tant que serveur Web pour servir les fichiers statiques ou gérer les caches.

Vous avez des retours d’expérience sur Traefik et HAProxy ? N’hésitez pas à les partager dans les commentaires pour enrichir cette page.

A lire aussi

GeeKanJi
100% digital, développement et technologie. Qui se connectera, verra! N'hésitez pas à me suivre sur Twitter.

A lire

Laissez un commentaire