Faire du load balancing avec Nginx

Nginx est un logiciel de serveur Web qui permet aussi de faire de la répartition de charge. Le load balancing Nginx n’est pas la tâche principale originelle du logiciel mais beaucoup de site l’utilise pour ses performances.

Informations sur Nginx

Nginx est un logiciel libre, c’est-à-dire premièrement qu’il est gratuit et que son code source (« l’ADN » du logiciel) est disponible à tous les utilisateurs. Ces derniers peuvent donc le modifier à leur souhait. Cette particularité de Nginx est une des raisons principales de son succès.

L’aventure a commencé en 2002 en Russie et désormais, Nginx est un des serveurs Web les plus utilisés au monde. Un serveur web est simplement un serveur concernant un réseau local ou même l’Internet. Il est chargé de diriger les données entre les différentes sources et les différents clients. Il est organise donc le flux des requêtes et est une des clés de tous les réseaux. Bien sûr, dés que des sites connaissent un fort trafic, les questions de répartition de charge apparaissent.

Nginx se distingue aussi par son caractère de serveur inverse. Contrairement au serveur proxy qui permet à un utilisateur d’accéder à un internet, le serveur inverse permet à un utilisateur d’Internet d’accéder à des serveurs internes. Ce n’est donc pas le proxy de l’utilisateur qui va chercher les informations disponibles sur le serveur mais c’est le proxy inverse qui amène l’information du serveur interne vers l’utilisateur.

Le load balancing Nginx

La load balancing Nginx se distingue parce qu’il s’agit d’un serveur asynchrone. Kesako ? Au lieu de recevoir chaque requête et de lui attribuer un processus dédié, le serveur asynchrone va diviser en mini-tâches cette requête, elles-mêmes étant ensuite envoyer à différents connexions pour être gérer. Cette technique de répartition de charge permet un multiplexage efficace et plusieurs processus peuvent être démarrés en parallèle. Plus important, les performances sont meilleurs qu’avec un serveur synchrone et la charge et la consommation de mémoire sont plus faibles. Notamment comparé aux serveurs Web traditionnels comme Apache (n°1 des serveurs Web).

Ces qualités ont permis tout d’abord à Nginx de se développer largement en Russie dans un premier temps. La langue de son fondateur (Aleksandar Lazic) étant le russe. Grâce à une traduction en anglais en 2006, Nginx est maintenant le deuxième serveur http le plus utilisé dans le monde derrière Apache et devant l’IIS de Microsoft. En étant utilisé par des sites comme Netflix (site de vidéo à la demande américain), Pinterest (réseau social) ou WordPress (plateforme de création de blogs et de sites), Nginx s’est imposé comme un acteur incontournable du marché des serveurs Web.

Le prix du load balancing Nginx

Depuis cet été, Nginx propose une version payante, Nginx Plus, particulièrement optimisée pour la répartition de charge. Disposant de son propre panneau de contrôle, ce nouveau load balancing Nginx permet de modifier la configuration de son réseau sans avoir à redémarrer l’application. Par conséquent, les utilisateurs peuvent désormais modifier la configuration de Nginx à la volée. Dernier avantage et non des moindres, Nginx Plus est proposée à partir de seulement 1350 dollars HT par instance et par an.

Vous avez aimé cet article ? Ou vous avez un commentaire à ajouter ? N'hésitez pas !

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *