얼음꽃의 일지

PM2 본문

항해 일지

PM2

얼음꽃 2022. 12. 5. 09:27
728x90

 

서버를 돌리다보면 이런 생각 듭니다.

 

개발중에서는 로컬을 켜서 돌려가지고 오류 생겨서 멈추면 오류 확인하고 고치고 다시 돌려보고 할 수 있지만, 다 만들고 배포를 하게되면 그때는 오류로 인해 꺼지면 안되고, 계속 실행을 시켜놔야합니다.

 

즉,

1. 서비스 사용 도중 오류로 인해 서버가 꺼지는 문제를 해결

2. Node자체가 싱글 스레드인데 이걸 늘리는 문제를 해결 ( 클러스터링 )

 

이때, 사용할 수 있는게 PM2(Process Manager 2) 입니다.

 

PM2 는 백그라운드 프로세스를 쉽게 관리할 수 있는 생산 등급 프로세스 관리자입니다. 

이걸 사용하게되면 모니터링, 로그확인, 애플리케인션 배포가 간단해 집니다.

거기다 메모리가 넘친거나, 오류로 인해 강제종료 등 문제가 생겨도 알아서 자동으로 켜집니다.

 

클러스터 모드라고 따로 존재하는데 이건 싱글 스레드를 멀티 스레드로 구동시켜줍니다.

싱글 스레드인 경우 CPU 개수와 상관없이 1개만 사용할 수 있어서 성능의 한계가 존재하는데, 멀티 스레드를 하게되면

서버 CPU 수만큼 그 한계를 높일 수 있습니다.

 

설치 및 사용 관련 해서는 공식사이트를 참고해주시면 감사하겠습니다.

 

https://pm2.io/

 

PM2 - Home

Build Battle-Hardened Node.js Applications.

pm2.io

 

728x90

'항해 일지' 카테고리의 다른 글

방탄 Helmet  (0) 2022.12.07
WebSocket 과 Socket.io  (0) 2022.12.06
계층형 아키텍처 패턴  (0) 2022.12.01
[DB] 트랜잭션의 ACID  (0) 2022.11.29
RDMS 와 NoSQL은 무엇인가?  (0) 2022.11.28