Node.js
Постоянно поддерживать приложение узла
Поиск…
Использовать PM2 в качестве менеджера процессов
PM2 позволяет запускать скрипты nodejs навсегда. В случае сбоя вашего приложения PM2 также перезапустит его для вас.
Установите PM2 глобально для управления экземплярами nodejs
npm install pm2 -g
Перейдите в каталог, в котором находится ваш скрипт nodejs, и выполните следующую команду каждый раз, когда вы хотите запустить экземпляр nodejs, который будет контролироваться pm2:
pm2 start server.js --name "app1"
Полезные команды для мониторинга процесса
Список всех экземпляров nodejs, управляемых pm2
pm2 list
Остановить конкретный экземпляр nodejs
pm2 stop <instance named>
Удалить конкретный экземпляр nodejs
pm2 delete <instance name>
Перезапустить конкретный экземпляр nodejs
pm2 restart <instance name>
Мониторинг всех экземпляров nodejs
pm2 monit
Остановка pm2
pm2 kill
В отличие от перезапуска, которая убивает и перезапускает процесс, перезагрузка достигает 0-секундного времени перезагрузки
pm2 reload <instance name>
Просмотр журналов
pm2 logs <instance_name>
Запуск и остановка демон Forever
Чтобы начать процесс:
$ 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
Список запущенных экземпляров 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 |
Остановите первый процесс:
$ forever stop 0
$ forever stop 2146
$ forever stop --uid f4Kt
$ forever stop --pidFile 2131
Непрерывный запуск с nohup
Альтернативой навсегда для Linux является nohup.
Чтобы запустить экземпляр nohup
- cd в папку
app.js
илиwww
- запустите
nohup nodejs app.js &
Чтобы убить процесс
- запустить
ps -ef|grep nodejs
-
kill -9 <the process number>
Технологическое соглашение с Forever
Монтаж
npm install forever -g
cd /node/project/directory
Обычаи
forever start app.js