본문 바로가기

Back-End/Node.js

Node.js.49.부록 - pm2 보충학습

반응형

pm2 start main.js --watch

background로 실행되므로 pm2 log를 통해 실행 상황을 확인했다.

 


 

pm2 list : 현재 실행되고 있는 프로세스들의 리스트

pm2 kill : pm2로 실행된 모든 프로세스들을 종료시킴

 

pm2 start main.js --watch --no-daemon

daemon: background로 실행되는 프로세스. 즉, demon이 아닌 상태로 실행시킴

이로 실행하게 되면 pm2 실행과 동시에 log를 볼 수 있다.

 

이 상태에서 다음 정보를 create해보자.

그렇게 되면 log에 프로세스가 꺼졌다가 켜졌다는 것을 확인할 수 있다.

하지만 이렇게 만들면 안된다.. 나중에 session, passport에 대해 배우긴 하는데

우리가 원하지 않는 타이밍에 프로그램이 꺼졌다 켜지면, 우리가 세팅해놓은 여러 데이터들이 사라지게 된다. 파일이 사라지는 게 아니라 메모리에 올라가 있던 데이터들이 사라지는 것이다. 

 

이런 경우에는 pm2 start main.js --watch --ignore-watch="data/*" --no-daemon

data 디렉토리에 있는 모든 파일에 대해 무시한다.

이렇게 하면 create해도 pm2가 꺼졌다 켜지지 않는다.

 

따라서 파일을 수정하거나 추가하는 기능이 들어가는 경우에는, --ignore-watch를 통해 꺼졌다켜지지 않도록 해주자! 그리고 꺼졌다켜지지 않는지 확인도 해보자!

 

만약 여러개 디렉토리를 관리해야 한다면 띄어쓰기를 통해 sessions를 추가하면 된다.

pm2 start main.js --watch --ignore-watch="data/* sessions/*"  --no-daemon

 

반응형