PM2는 JavaScript 런타임 Node.js의 프로세스 관리자이다.
# Install
npm install pm2@latest -g
yarn global add pm2
# Update
pm2 update
pm2 start app.js
pm2 [list|ls|status]
# To display logs in realtime
pm2 logs
# Here is a realtime dashboard that fits directly into your terminal
pm2 monit
# Web based dashboard, cross servers with diagnostic system
pm2 plus
# You can also create a configuration file, called Ecosystem File,
# to manage multiple applications.
pm2 ecosystem
# And start it easily
pm2 start ecosystem.config.js
// ecosystem.config.js
module.export = {
apps: [{
name: 'app_name',
script: './app.js',
instances: 0,
exec_mode: 'cluster'
}]
}
instances
값을 0으로 설정하면 CPU 코어 수 만큼 프로세스를 생성하겠다는 뜻이다.
# 프로세스 4개 추가
pm2 scale app_name +4
# 프로세스 4개 제거
pm2 scale app_name 4
pm2 stop <app_name>
pm2 delete <app_name>
pm2 restart <app_name>
pm2 reload <app_name>
pm2 show <app_name>