node后台服务器-PM2

title: node后台服务器-PM2 id: 2c54e1bfaac6ce2bd448887c8b2a9e68 tags: [] date: 2000/01/01 00:00:00 updated: 2022/12/09 13:40:03 isPublic: true --#|[分隔]|#--

node后台服务器-PM2

正常一个node服务,在开发时会直接使用node <node服务文件路径>启动,但启动后需要保持服务窗口存在,不能关闭,否则这个node服务也会关闭,所以这个方法只在本地开发时使用。

pm2的作用就是能够使node服务常驻,并提供一些新的功能,相当于把node服务托管给他。

市面上除了pm2,还有很多其他类似功能的工具,以下为现阶段比较主流的几款。

  • supervisor:开发环境用。

  • nodemon:开发环境使用,修改自动重启。

  • forever:管理多个站点,每个站点访问量不大,不需要监控。

  • pm2:网站访问量比较大,需要完整的监控界面。

其中最优秀的,自然就是pm2了。

以下为pm2常用的部分功能

功能
指令
备注

初次启动

pm2 start <服务文件路径> -n '<服务名称>'

-n 可以使用 --name 替换,意思为给服务设置别名

初次启动 npm 指令(初次执行需要再项目文件夹下执行)

pm2 -n '<服务名称>' start npm -- run start

pm2 -n '服务1' start npm -- run start

再次启动

pm2 start <服务ID>

重启某个服务

pm2 restart <服务文件路径 | 服务ID>

重启所有服务

pm2 restart all

重载某个服务

pm2 reload <服务文件路径 | 服务ID>

重载所有服务

pm2 reload all

停止某个服务

pm2 stop <服务文件路径 | 服务ID>

停止所有服务

pm2 stop all

永久删除某个服务

pm2 delete <服务文件路径 | 服务ID>

永久删除所有服务

pm2 delete all

查看所有的服务列表

pm2 ls

查看所有的进程状态

pm2 status

实时查看某个node服务中的打印信息

pm2 logs <服务ID>

实时查看所有node服务中的打印信息

pm2 logs

查看某一个进程的信息

pm2 describe <服务文件路径 | 服务ID>

超过使用内存上限后自动重启(超过100M自动重启)

pm2 start big-array.js --max-memory-restart 100M

安装node.js

官网下载,进行安装

验证是否安装完成的方式,输入以下命令,输出node版本号即可

全局安装node服务进程管理器 - pm2

使用npm进行全局安装

验证是否安装完成的方式,输入以下命令,能输出pm2版本号即可

使用pm2启动node服务

  1. 进入node项目文件夹

  2. 使用以下指令安装此node项目的依赖

  1. 使用以下指令打包项目,项目存放位置为当前目录的./dist文件夹内

  1. 使用以下命令启动node服务 其中kline是此pm2服务的自定义名称

  1. 使用以下命令查看pm2中已有的服务列表

Last updated

Was this helpful?