<aside>
</aside>
참고자료
Node.js 애플리케이션을 Production 환경에서 효율적으로 관리하고, 성능을 최적화하기 위해 사용되는 프로세스 관리자
.
PM2를 사용해 서버에서 애플리케이션을 안정적으로 실행하고, 쉽게 재시작 하며, 리소스를 한눈에 모니터링 할 수 있다.
애플리케이션이 업데이트 될 시, 무중단 배포
를 지원하여 서비스의 중단 없이 새로운 코드로 애플리케이션을 쉽게 업데이트 할 수 있습니다.
우리 서버는 현재(2주차) Nest.js
애플리케이션을 실행시킬 때 PM2를 활용중이다.
module.exports = {
apps: [
{
name: 'Denamu',
script: './dist/main.js',
instances: 'max',
exec_mode: 'cluster',
},
],
};
// pm2 실행 설정 파일
위 옵션으로 실행 후 pm2 status
명령어를 쳐보면 아래와 같은 화면이 나온다.
scripts
: 실행 할 js 파일의 destinationinstances
: 애플리케이션을 실행하는데 활용할 인스턴스 수 (which means, CPU 코어 수)exec_mode
: 실행 모드로, fork
와 cluster
모드가 있는데 두 모드의 차이점은 아래와 같다.