[PM2]PM2 사용하기 - Node.js 프로세스 관리 도구
서버에서 웹 어플리케이션을 운영할 때 데몬(백드라운드 잡)으로 서버를 띄워야하고, 충돌이 나면 재시작등을 해줘야한다.
그래서 서버의 영속성을 위해 여러가지 툴들이 등장했는데, 최근 PM2라는 도구가 사용하기 좋아 도입하게 되었다.
PM2
PM2는 앞서 이야기 한 것 처럼 백그라운드 잡으로 Node.js 프로세스를 관리해주는 역할을 한다. 서버다운없이 다시로드할 수 있도록 도와주기 때문에, 서버를 잘 만들기만 하면 굳이 와치독등을 이용한 관제에 큰 힘을 쓰지 않아도 된다.
설치하기
npm을 이용하여 글로벌로 설치한다.
npm install pm2 -g
끝-. npm 만세
실행하기
아래 명령어처럼 실행하면 된다.
pm2 start app.js
만약 노드로만 실행을 했다면 아래와 같았을 것이다.
node app.js
너무도 유사하기 때문에 쉽게 사용할 수 있다.
자주쓰는 기능
pm2 stop {id} //id 앱을 종료한다.
pm2 kill //pm2 자체를 종료한다.
pm2 list //pm2로 실행되고 있는 앱의 리스트를 확인한다.
pm2 restart {id} //id 앱을 재시작한다.
pm2 delete {id} //id 앱을 리스트에서 제거한다.
pm2 describe {id} //id 앱의 자세한 내용을 확인한다.
pm2 monit //cpu/ memory등을 모니터링한다.
pm2 logs {id} // id 앱의 로그를 확인한다.
이 외에도 클러스터링과 json파일 실행하기 등등 기능이 다양하다. 나같은 경우는 스크립트를 짜서 pm2로 실행시키기도 한다.
마치며
서버를 배포하는데는 안정성이 중요하다. PM2는 여러분들의 서버에 안정성을 더해줄 수 있을 것이다.
2023년 새해에는 성장하고 함께하고 싶다면?
Pre A 단계 이상의 스타트업 C 레벨들이 모여서 커뮤니티를 만들었습니다. 같이 스터디하고 친해질 일잘러를 찾습니다.