클러스터화 가동 설정 및 디버깅
Node.js의 루트 바로 아래에 있는 인덱스 파일들은 package.json 설정 등을 통하면 멀티스레드로 실행할 수 있다.
package.json 파일 설정과 pm2를 이용하여 별개의 프로그램을 클러스터화 가동한다.
1. pm2 npm 모듈 글로벌 옵션으로 깔기(클러스터 작동 확인을 위한 도구)
1 | npm install pm2 -g |
2. 클러스터화 파일 작성
각 클러스터의 dev 실행 명령어 지정 및 클러스터화 시동 명령어 지정(package.json)
package.json 작성 예제. daum/blog/post는 각기 실행할 별개의 index.ts파일이라고 보면 됨.
1 | "scripts":{ |
pm2.config.js 작성 예제. 클러스터화를 할 설정파일들을 지정한다. 인스턴스 갯수만큼 생성이 됨.
1 | module.exports={ |
3. 빌드하기
타입스크립트 파일들이 js로 빌드된다.
1 | npm run build |
4. 클러스터 가동
package.json에서 선제 명령어 설정을 해줘야 함
1 | npm run start:cluster |
5. 이후 디버깅은 pm2 에서 할 수 있음
가동되고 있는 클러스터 확인
1 | pm2 list |
클러스터 상세내역 확인(방향키로 조정)
1 | pm2 monit |
클러스터 가동 취소
npm run start:cluster 명령어를 쳤던 커맨드창 ctrl+c
이렇게 취소하면 pm2 list 했을 때 생성되었던 클러스터들이 사라진 것을 볼 수 있다.