본문 바로가기
카테고리 없음

PM2 cluster mode 에 대해서

by 별빛과하엘 2020. 10. 20.

PM2 cluster mode에 대해서 이야기하기전에 PM2란???
Process Manager 2라는 의미로써 말그대로 생산 프로세스 관리프로그램 입니다.
주로 Node.js 애플리케이션을 관리하도록 돕고있습니다. PM2의 주요 기능 중 일부는 자동 애플리케이션로드 밸런싱, 선언적 애플리케이션 구성, 배포 시스템 및 모니터링을 가지고 있습니다.

 

여기에서 pm2를 사용하기 이전에 npm을 이용하여 pm2를 install를 먼저 해주어야됩니다.

 

------------ 쉘 -----------------
$ npm install pm2 -g           <- 이명령어를 통해서 전역으로 설치를 해줍니다.

---------------------------------

 

 

그리고나서 주요 명령어를 살펴보겠습니다. 

$pm2 start  "자바스크립트 실행 파일"      명령어

위에 부분에서는 실행파일로써 pm2을 이용하여서 프로세스를 실행하는부분입니다.

$pm2 list      명령어

이 부분은 pm2에서 무엇이 실행이 되어있는지 확인해주는 명령어입니다.

이명령어 말고도 여러가지들이 엄청 많이 있습니다 그부분은 다음에 정리해드리고 오늘은 제일 중요한 cluster mode에 대해서 설명해드리겠습니다.

 

Node.js를 사용해보신분들은 아시겠지만 싱글 이벤트 프로세스로 돌아가서 다른 프레임워크보다 느리다는것을 알고계실겁니다.
Node.js도 이벤트만 싱글프로세스로 돌아가지만, 안에 내부적인 부분에서는 비동기적으로 움직이기때문에 내부에서는 멀티로 돌아가는걸로 알고있습니다. 하지만 내부에서만 멀티로 돌아간다고 해서 그 문제점을 해결해주지는 않습니다..

 

그렇게 해서 나온부분이 PM2 cluster mode 인데, 이부분은 node를 pm2통해서 멀티 이벤트 스레드로 돌아가게 도와줍니다.

밑에 사진을 참고하시면 금방 이해되실겁니다.

지금부터!! 위에처럼 4개를 작동시켜 보겠습니다.

 

여기 사진을보시면 cluster 라고 보이시죠??? 명령어는 기존명령어에서 옵션 -i를 주고 숫자 4를 적었습니다.

이처럼 4개가 돌아가면서 자동적으로 멀티 스레드 구조로 만들어졌습니다.

잘못된 부분이 있다면 알려주시면 감사하겠습니다 ^^