Accueil Technologies PM2 – Un des meilleurs outils de mise en production Node.JS
PM2

PM2 – Un des meilleurs outils de mise en production Node.JS

par Jérémy PASTOURET
Publié : Mis à jour le

Après avoir développé une première version d’un projet Node.JS, il faut passer l’application en production. Pour résoudre cette problématique, il existe PM2 : un processus daemon NodeJS qui gère complètement l’application. Ce daemon est assez puissant et permet de réaliser de nombreuses actions : monitoring, gestion des logs, redémarrage automatisé, création de micro-services…

Présentation de PM2

Présentation de PM2

PM2 est disponible en deux versions. L’une est gratuite, l’autre (payante) est plus orientée pour les entreprises. Je présente ici la version gratuite car celle-ci est largement suffisante.

Le service PM2 est assez complet et simple d’utilisation. Il suffit d’ajouter un projet NodeJS en quelques lignes de commande.

Ensuite, PM2 gère de manière autonome votre application. Il détecte lorsque celle-ci plante, et la redémarre automatiquement.

Redémarrage automatisé

Monitoring avec PM2

Monitoring PM2

PM2 propose de connecter les applications NodeJS à leur serveur de monitoring. Grâce au tableau de bord, on peut se rendre compte s’il y a un problème avec l’application NodeJS. Si le nombre de redémarrages est élevé, si l’utilisation CPU est élevée, si la mémoire est au maximum, alors il y a probablement un souci. Tous ces critères permettent d’être alerté, tout en fournissant des pistes pour trouver des solutions.

Ces indicateurs sont tout aussi importants pour optimiser un serveur et connaître ses points faibles (trop juste en CPU ou en mémoire).

Pour être honnête, je trouve que ces solutions de monitoring en ligne sont très pratiques. Je reste toutefois un peu frileux – pour des questions de sécurité et de confiance envers la société derrière PM2.

Cependant, pour parer à cette problématique, il est possible de désactiver le monitoring en ligne et d’utiliser la version en console. On a l’impression d’être un hackeur ou un génie de l’informatique avec un tableau de bord pareil.

Tableau de bord console PM2

Scaler une application avec PM2

PM2 - scalling manuel

Le dernier point fort de PM2 est la scalabilité d’un application Node.JS. En effet, s’il y a un pic d’utilisateurs ou si certaines tâches sont trop longues, il est intéressant de créer d’autres processus de l’application. De cette manière, le temps de chargement est réduit et le nombre d’utilisateurs gérable est plus volumineux.

Il est possible de « scaler » manuellement une application Node.JS. Cela permet de tester les limites d’un serveur et de connaître le nombre de processus fonctionnant en parallèle.

Conclusion

Bannière conclusion

Avec PM2, plus besoin de se réveiller en sueur la nuit en se demandant si notre application NodeJS fonctionne encore. PM2 s’occupe de tout, à partir du moment où il est lancé au démarrage du serveur.

Pour la partie pratique, je vous invite à lire l’article suivant afin d‘installer PM2 et de découvrir comment l’utiliser à bon escient.

🔨 Et vous, quels outils ou packages utilisez-vous pour mettre en production vos applications NodeJS ?

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.