Node.js
Utrzymuj aplikację węzła stale działającą
Szukaj…
Użyj PM2 jako menedżera procesów
PM2 pozwala na uruchamianie skryptów nodejs na zawsze. W przypadku awarii aplikacji PM2 również ją ponownie uruchomi.
Zainstaluj PM2 globalnie, aby zarządzać instancjami nodejs
npm install pm2 -g
Przejdź do katalogu, w którym znajduje się skrypt nodejs, i uruchom następującą komendę za każdym razem, gdy chcesz uruchomić instancję nodejs monitorowaną przez pm2:
pm2 start server.js --name "app1"
Przydatne polecenia do monitorowania procesu
Wyświetl wszystkie instancje nodejs zarządzane przez pm2
pm2 list
Zatrzymaj konkretną instancję nodejs
pm2 stop <instance named>
Usuń konkretną instancję nodejs
pm2 delete <instance name>
Uruchom ponownie konkretną instancję nodejs
pm2 restart <instance name>
Monitorowanie wszystkich instancji nodejs
pm2 monit
Zatrzymaj pm2
pm2 kill
W przeciwieństwie do restartu, który zabija i restartuje proces, przeładowanie osiąga 0-sekundowe przestoje
pm2 reload <instance name>
Zobacz rejestry
pm2 logs <instance_name>
Uruchamianie i zatrzymywanie demona Forever
Aby rozpocząć proces:
$ 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
Lista uruchomionych instancji 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 |
Zatrzymaj pierwszy proces:
$ forever stop 0
$ forever stop 2146
$ forever stop --uid f4Kt
$ forever stop --pidFile 2131
Ciągła praca bez nohup
Alternatywą dla wieczności w systemie Linux jest nohup.
Aby uruchomić instancję nohup
- cd do lokalizacji folderu
app.js
lubwww
- uruchom
nohup nodejs app.js &
Aby zabić proces
- uruchom
ps -ef|grep nodejs
-
kill -9 <the process number>
Zarządzanie procesami za pomocą Forever
Instalacja
npm install forever -g
cd /node/project/directory
Zastosowania
forever start app.js