express框架开发接口部署线上环境PM2
Posted layee
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了express框架开发接口部署线上环境PM2相关的知识,希望对你有一定的参考价值。
1、PM2介绍
PM2是一个线上环境下,用于启动nodejs进程守护的工具,用来保证服务的稳定及分摊服务器进程和压力。
2、下载安装
npm install pm2 -g => pm2 --version => 在package.json scripts中配置 "prd": "cross-env NODE_ENV=production pm2 start app.js" => npm run prd运行,运行结果如下图:
3、常用命令
启动:pm2 start app.js
监听控制台PM2进程列表: pm2 list
重启:pm2 restart <AppName> / <id>
停止和删除:pm2 stop <AppName> / <id> pm2 delete <AppName> / <id>
基本信息: pm2 info <AppName> / <id>
日志:pm2 log <AppName> / <id>
监听进程的CPU和内存信息:pm2 monit <AppName> / <id>
4、进程守护
pm2在后台代码遇到意外错误时,进程就会重启,保证服务端能继续为前端和客户端提供服务,并将错误信息记录到日志中。
5、常用配置
创建pm2.conf.json文件,输入需要配置的信息,如下:记得删除注释
{ "apps": { "name": "pm2-test-server", //设置app的name "script": "app.js", //启动的文件 "watch": true, //监听文件变化自动重启 "ignore_watch": [ //不需要监听重启 "node_modules", "logs" ], "instances": 4, //设置多进程 "error_file": "logs/err.log", //错误日志地址 "out_file": "logs/out.log", //输出日志地址 "log_date_format": "YYYY-MM-DD HH:mm:ss" //在日志中的每一行都要标记时间 } }
修改package.json中的"prd": "cross-env NODE_ENV=production pm2 start pm2.conf.json"
以上是关于express框架开发接口部署线上环境PM2的主要内容,如果未能解决你的问题,请参考以下文章