반응형
그리고 error.log, info.log, 자원 점유 등등 여러 기능을 제공해준다.
간단하게 설치부터 사용법에 대해 정리해보자.
설치
$ npm install pm2 -g
실행방법
$ pm2 start app.js
사용법은 아주 간단하다. 위와 같이 command로 프로그램을 실행할 때 여러 옵션도 줄 수 있다.
1 2 | // wedul_app.js 를 max_space_size를 500으로 지정하고 실행하라. pm2 start wedul_app.js —node_args=“—max_old_space_size=500” | cs |
두 개 이상의 옵션도 부여할 수 있다.
1 2 | // max_space_size와 harmony(es 2015 옵션)를 둘다 사용. pm2 start wedul_app.js --node-args="--max_old_space_size=500 harmony" | cs |
하지만 실제 운영 에서는 옵션이 한두가지가 아니기 때문에 계속 command로 설정을 지정 하기에는 부담이 된다.
그래서 별도의 json 파일에 옵션값들을 정의할 수 있다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | { "apps": [ { "name": "wedul_batch", "script": "./batch/index.js", "watch": true, "node_args":"--harmony", "env": { "NODE_ENV": "development" }, "env_production": { "NODE_ENV": "production" } }, { "name": "wedul", "script": "./bin/www", "watch": true, "node_args":"--harmony", "env": { "NODE_ENV": "development" }, "env_production": { "NODE_ENV": "production" } } ] } | cs |
위의 옵션은 각 실행시키고자 하는 애플리케이션의 이름과 위치 그리고 옵션등을 지정할 수 있다.
위와 같이 설정하고 아래 명령어로 실행시킨다.
pm2 start pm2test.json --name wedul_batch --env development
이렇게 실행하면 pm2test.json 옵션에 맞게 실행이 된다.( --env 옵션을 사용하면 이전에 공부했었던 process.env.NODE_EVN 전역변수값을 사용할 수 있다.)
이렇게 모든 설정을 하고 실행하면 다음과 같은 화면으로 실행된다.
# detail (특정 애플리케이션 현재 상태 확인)
#로그 확인
1 | pm2 log [appname] | cs |
반응형
'web > node.js' 카테고리의 다른 글
node.js에서 aws s3 스토리지에 이미지 저장하기 (0) | 2018.10.06 |
---|---|
swagger api 보안 oauth2 설명 (0) | 2018.10.06 |
request-promise를 통해 가져온 euc-kr 문자열 인코딩 문제 해결 (iconv) (6) | 2018.10.06 |
node.js로 구글 스프레드시트에 접속하여 데이터 가져오기 (0) | 2018.10.05 |
router 경로 enumset 처럼 받는 방법과 테스트 사이트 (0) | 2018.10.05 |