나는 프로세스를 자동 데몬 화하고 관리하는 모니터를 가지고있다.node.js 서버 죽이기
그래서이 node.js 프로그램은 어떻게 든 다른 프로세스를 생성합니다. 내 코드는 포크를 사용하지 않거나 그와 같은 것을 사용하지 않는다. 단지 db 작업을하는 setInterval을 사용하는 무한 루프가있다.
이 그것을 실행 어떻게입니다 : 내가 프로그램을 다시 시작하도록 지시 할 때
이24763 ubuntu 20 0 695m 21m 5464 S 0 0.3 0:00.39 node /path/to/program.js
25053 ubuntu 20 0 4264 580 484 S 0 0.0 0:00.01 sh -c node /path/to/program.js >> program.log 2>&1
내 프로세스 모니터는 다음 그래서, 25053와 PID 파일을 설정합니다 top -bcn1|grep program.js
쇼를 본 후
node /path/to/program.js >> program.log 2>&1
, 25053을 죽이고 프로그램을 다시 시작하면 이전 명령의 출력은 다음과 같습니다.
24763 ubuntu 20 0 695m 21m 5464 S 0 0.3 0:00.39 node /path/to/program.js
23520 ubuntu 20 0 630m 21m 5464 S 0 0.3 0:00.39 node /path/to/program.js
23012 ubuntu 20 0 4264 580 484 S 0 0.0 0:00.01 sh -c node /path/to/program.js >> program.log 2>&1
그래서 어떻게하면 "어린이"과정이든 그것이 무엇이든간에 죽게 되나요?
나는 이것이 노드에서 기본적인 것이지만 나는 아직 답을 찾지 못했다고 생각한다.
확실하지 않습니다. [this pull request] (https://github.com/joyent/node/pull/2832)를 참조하십시오. –
내가 산란이나 돌연변이를하지 않고 있어도 적용 되는가? – Ivan
오해가 있습니다. 나는 그것이 적용되지 않는다고 믿는다. 죄송합니다. –