Node.js
Garder une application de noeud en cours d'exécution
Recherche…
Utiliser PM2 comme gestionnaire de processus
PM2 vous permet d'exécuter vos scripts nodejs pour toujours. Dans le cas où votre application se bloque, PM2 le redémarrera également pour vous.
Installez globalement PM2 pour gérer vos instances de nodejs
npm install pm2 -g
Accédez au répertoire dans lequel réside votre script nodejs et exécutez la commande suivante à chaque fois que vous souhaitez démarrer une instance nodejs à surveiller par pm2:
pm2 start server.js --name "app1"
Commandes utiles pour surveiller le processus
Liste toutes les instances de nodejs gérées par pm2
pm2 list
Arrêtez une instance nodejs particulière
pm2 stop <instance named>
Supprimer une instance nodejs particulière
pm2 delete <instance name>
Redémarrer une instance nodejs particulière
pm2 restart <instance name>
Surveillance de toutes les instances de nodejs
pm2 monit
Arrêter pm2
pm2 kill
Au lieu de redémarrer, ce qui tue et redémarre le processus, reload réalise un rechargement de 0 seconde
pm2 reload <instance name>
Regardes les connexions
pm2 logs <instance_name>
Lancer et arrêter un démon Forever
Pour démarrer le processus:
$ forever start index.js
warn: --minUptime not set. Defaulting to: 1000ms
warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
info: Forever processing file: index.js
Liste exécutant des instances Forever:
$ forever list
info: Forever processes running
|data: | index | uid | command | script |forever pid|id | logfile |uptime |
|------|-------|-----|------------------|-------------|-----------|-----|------------------------|--------------|
|data: | [0] |f4Kt |/usr/bin/nodejs | src/index.js|2131 | 2146|/root/.forever/f4Kt.log | 0:0:0:11.485 |
Arrêtez le premier processus:
$ forever stop 0
$ forever stop 2146
$ forever stop --uid f4Kt
$ forever stop --pidFile 2131
Fonctionnement continu avec nohup
Une alternative à toujours sur Linux est nohup.
Pour démarrer une instance Nohup
- cd à l'emplacement du dossier
app.js
ouwww
- lance
nohup nodejs app.js &
Pour tuer le processus
- lancez
ps -ef|grep nodejs
-
kill -9 <the process number>
Processus de gestion avec pour toujours
Installation
npm install forever -g
cd /node/project/directory
Coutumes
forever start app.js