Как запустить до остановки при перезагрузке приложения с PM2?(или любой другой менеджер процессов?) - PullRequest
0 голосов
/ 19 сентября 2018

Я использую PM2 для развертывания моего приложения.Я сделал мое приложение испустить process.send("ready"), когда оно будет готово.Я также заставил его корректно закрыться, когда он получает сигнал SIGINT от PM2 [process.on('SIGINT', doShutdown);].

Я ожидал, что PM2 запустит новый процесс для моего приложения и выдаст SIGINT существующему.Но на самом деле это происходит в обратном порядке.Мало того, что оно также ожидает выхода из существующего приложения, прежде чем оно запустит новое.Так что это дает время простоя.

Мое приложение не является веб-приложением.Он не должен прослушивать любой порт, кроме подключения к Redis.

Моя команда для запуска PM2: pm2 start index.js --kill-timeout 120000 --wait-ready --listen-timeout=10000 -- --config=config/example.json

Для развертывания я использую: pm2 reload all

Как мне заставить его начать новый процесс, прежде чем убить существующий?Может ли это быть достигнуто с помощью любого другого инструмента, кроме PM2?пожалуйста предложите?

...