Node.js
Halten Sie eine Knotenanwendung ständig aktiv
Suche…
Verwenden Sie PM2 als Prozessmanager
Mit PM2 können Sie Ihre nodejs-Skripts für immer ausführen. Falls Ihre Anwendung abstürzt, wird sie auch von PM2 neu gestartet.
Installieren Sie PM2 global, um Ihre nodejs-Instanzen zu verwalten
npm install pm2 -g
Navigieren Sie zu dem Verzeichnis, in dem sich Ihr nodejs-Skript befindet, und führen Sie den folgenden Befehl jedes Mal aus, wenn Sie eine von pm2 zu überwachende nodejs-Instanz starten möchten:
pm2 start server.js --name "app1"
Nützliche Befehle zur Überwachung des Prozesses
Listen Sie alle von pm2 verwalteten nodejs-Instanzen auf
pm2 list
Stoppen Sie eine bestimmte nodejs-Instanz
pm2 stop <instance named>
Löschen Sie eine bestimmte nodejs-Instanz
pm2 delete <instance name>
Starten Sie eine bestimmte nodejs-Instanz erneut
pm2 restart <instance name>
Überwachen aller nodejs-Instanzen
pm2 monit
Stoppen Sie pm2
pm2 kill
Im Gegensatz zum Neustart, der den Prozess abbricht und neu startet, wird beim Nachladen eine Nachladung von 0 Sekunden erreicht
pm2 reload <instance name>
Protokolle anzeigen
pm2 logs <instance_name>
Einen Forever-Daemon ausführen und stoppen
Um den Prozess zu starten:
$ 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 der laufenden Forever-Instanzen:
$ 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 |
Stoppen Sie den ersten Vorgang:
$ forever stop 0
$ forever stop 2146
$ forever stop --uid f4Kt
$ forever stop --pidFile 2131
Dauerlauf mit nohup
Eine Alternative zu ewig unter Linux ist nohup.
So starten Sie eine Nohup-Instanz
- cd an den Ort von
app.js
oderwww
app.js
-
nohup nodejs app.js &
Um den Prozess zu beenden
- Führen Sie
ps -ef|grep nodejs
-
kill -9 <the process number>
Prozessmanagement mit Forever
Installation
npm install forever -g
cd /node/project/directory
Verwendungen
forever start app.js