pm2 是带有负载均衡的 Node 进程管理器。功能包括:守护进程、日志、监控、热重载、部署等等,总之功能很强大,操做很便捷,值得花一些时间了解。
全局安装 pm2 node
$ npm install pm2 -g
git
这里只列出工做中最经常使用的命令。只有在启动的时候须要执行具体的入口文件好比app.js,以后全部的操做都基于进程的名称或者id。
pm2 start app.js
启动进程pm2 start app.js
--name myweb 启动进程并命名为mywebpm2 start app.js --watch
启动进程 热重载pm2 start app.js -i 0
启动进程,根据cpu核数自动负载均衡pm2 stop myweb
中止myweb进程pm2 show myweb
查看myweb进程详细信息pm2 restart myweb
重启myweb进程pm2 list
全部进程列表pm2 logs
查看进程实时日志pm2 logs --lines 200
查看进程实时日志,并显示200条旧日志pm2 delete myweb
删除myweb进程pm2 delete all
删除全部进程pm2 monit
监控进程的cpu、内存使用状况举个例子:以热重载的方式启动进程并命名为 koa 。App name:koa,id:0。github
pm2 也能够以配置文件的形式启动进程,功能很强大。
命令行输入:web
pm2 ecosystem
npm
会生成配置文件模板,大体以下:bash
module.exports = {
apps: [{
name: 'API',
script: 'app.js',
// Options reference: https://pm2.io/doc/en/runtime/reference/ecosystem-file/
args: 'one two',
instances: 1,
autorestart: true,
watch: false,
max_memory_restart: '1G',
env: {
NODE_ENV: 'development'
},
env_production: {
NODE_ENV: 'production'
}
}],
deploy: {
production: {
user: 'node',
host: '212.83.163.1',
ref: 'origin/master',
repo: 'git@github.com:repo.git',
path: '/var/www/production',
'post-deploy': 'npm install && pm2 reload ecosystem.config.js --env production'
}
}
};复制代码
具体怎么用这里不赘述了,本篇主旨在于快速上手pm2,若是你想深刻研究这些,推荐看官方文档,写的很详细,不过目前只有英文版的文档。app
pm2 官方文档:pm2.keymetrics.io/docs/usage/…负载均衡