티스토리 뷰

IT 이야기/프로그래밍

[NODE.JS] PM2에 대해서

하늘과 나b 2021. 6. 23. 10:23

PM2는

Process Manager의 약자로 노드 프로세스를 관리해주는 역할을 한다.
node.js로 만들어진 앱에 대한 프로세스 관리를 편리하게 해줍니다.


설치방법

$ npm install pm2 -g
위 명령으로 설치 가능합니다.

 

PM2의 장점


1. PM2는 프로세스를 관찰하고 있다가 프로세스가 종료되면 다시 실행해줄 수 있습니다.
2. JS 파일을 수정 했을때 자동으로 프로세스를 껐다가 켜줍니다.
3. node.js 는 기본적으로 single thread만 지원하는데 pm2는 cluster라는 기능으로 16개의 프로세스를 동시에 지원가능하게 해줍니다.
4. 컴퓨터가 꺼졌다 켜졌을 때 프로세스를 자동으로 실행시켜 줍니다.

 

 

PM2 명령어 목록 확인

$ pm2 examples

 

pm2 start

$ pm2 start app.js
node.js 앱을 실행, 프로세스가 생성됩니다

 

pm2 ls

$ pm2 ls
현재 pm2가 감시하고 있는 프로세스 목록을 표시합니다.

 

pm2 stop

$ pm2 stop id|name|namespace|all|json|stdin
실행되고 있는 프로세스를 종료합니다.

 

pm2 delete

$ pm2 delete 0
pm2가 감시하고 있는 프로세스를 제거합니다.

 

pm2 --watch option

$ pm2 start app.js --watch
코드가 변경되면 프로세스를 재시작합니다.

 

pm2 log

$ pm2 log
현재 실행중인 프로세스들의 로그를 하나의 화면에서 보여준다

 

pm2-dev

$ pm2-dev app.js
app.js 프로그램을 watch하면서 log를 표시합니다

 

pm2 start [name] -i max

$ pm2 start app.js -i max
프로세스를 실행시킬때 스레드의 숫자만큼 프로세스를 실행시킵니다.

 

운영체제 재시작 자동실행 명령어

$ pm2 start app.js $ pm2 save $ pm2 startup
운영체제마다 컴퓨터가 재시작되었을 때 저장된 프로세스들을 자동실행 할 수 있는 명령어를 알려준다.


$ pm2 unstartup systemd 또는 $ pm2 unstartup launchd
운영체제 시작 시 저장된 프로세스 자동실행 취소

 

댓글