当前位置: 首页 > 后端技术 > Node.js

linux-node开发的部署方式——PM2

时间:2023-04-03 13:49:16 Node.js

如果直接通过nodeapp启动,如果报错,可能会直接停止运行。supervisor感觉只是作为开发环境使用。然后在网上找pm2。目前网上部署nodejs项目最多的好像是forever和pm2。使用场合:supervisor用于开发环境,永远管理多个站点,每个站点访问量小,不需要监控。nodemon用于开发环境,修改后自动重启。pm2网站访问量比较大,需要完善的监控接口。PM2的主要特点是内置负载均衡(使用Node集群集群模块)后台运行,0秒宕机重载,我的理解大概就是不需要宕机进行维护升级。Ubuntu和CentOS启动脚本停止不稳定进程(避免死循环)Console检测提供HTTPAPI远程控制和实时接口API(Nodejs模块,允许与PM2进程管理器交互)linux下安装使用方法Installnodenpm安装pm2npminstallpm2@latest-g这里不做详细介绍安装后需要配置全局环境ln-sopt/node.js/node-v10.13.0-linux-x64/bin/pm2/usr/local/bin/opt/node.js/node-v10.13.0-linux-x64/bin/pm2是我的node安装目录/usr/local/bin/global环境配置目录pm2list//这个命令本身列出了所有启动的程序pm2[root@WeiHuSrv/]#pm2list┌──────────────────────────────────────────────────e────────┬──────────┬──────┬────────────┬──────────┬────────────┐│应用名称│id│版本│模式│pid│状态│重启│运行时间│cpu│内存│用户│观看│├────────────┼──────┼──────────────┼────────────────────────────────────────────e────┼────────────┼────────┼──────────────┤│应用程序│0│1.0.0│分叉│17362│在线│0|──────┴──────────┴───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┴────────┴──────────────┘使用`pm2show`获取有关应用程序的更多详细信息。这是成功的。pm2常用命令$pm2logs显示所有进程日志$pm2stopall停止所有进程$pm2restartall重启所有进程$pm2reloadall0secondsstopreloadprocess(forNETWORKEDprocess)$pm2stop0停止指定进程$pm2restart0restart指定进程$pm2startup生成init脚本以保持进程存活$pm2web运行健壮的计算机API端点(http://localhost:8080)$pm2delete0杀死指定进程$pm2deleteall杀死所有进程不同的进程运行方式:$pm2startapp.js-imax取决于可用CPU数量启动最大进程数$pm2startapp.js-i3启动3个进程$pm2startapp.js-x以fork模式启动app.js而不是cluster$pm2startapp.js-x---a23以fork模式启动app.js并传递参数(-a23)$pm2startapp.js--nameserverone启动一个进程并将其命名为serverone$pm2stopserverone停止serverone进程$pm2startapp.json启动进程,在app.json中设置选项$pm2startapp.js-imax---a23将参数传递给app.jsafter--$pm2startapp.js-imax-eerr.log-oout.log启动并生成配置文件关于pm2远程部署到多台机器,参考:http://pm2.keymetrics.io/docs...官网:http://pm2.keymetrics.io/文档...