写点什么

浅析 PM2 实用入门指南

作者:青年码农
  • 2022 年 8 月 02 日
  • 本文字数:789 字

    阅读完需:约 3 分钟

浅析PM2实用入门指南

PM2 是一个守护进程管理器,可以用它来管理你的 node 进程,负责所有正在运行的进程,并查看 node 进程的状态,也支持性能监控,负载均衡等功能。使用起来也是非常简单

一 特性

  • 日志管理:收集日志,并有插件配合进行管理

  • 负载均衡:减轻服务器压力

  • 终端监控:可以在终端中监控您的应用程序并检查应用程序运行状况

  • 静态服务:支持静态服务器功能

  • 集成管理:多个进程,不同环境,统一配置

  • SSH 部署:自动部署,避免在所有服务器中进行 ssh

二 安装

我们可以通过 NPM 或 Yarn 安装,在安装之前需要安装 Node.js 和 NPM,您可以使用 NVM 来管理 Node 环境。


1.png


三 上手使用

最近由于小程序云开发规则的调整,不得不把之前用云开发的项目重构,这里我们用 Nest 项目讲解。关于 Nest 教程,翻看历史记录可以找到。Nest 是基于 Node.js 服务器端应用程序的 WEB 应用框架,可以很轻松的编写 API 接口。

PM2 安装完成,查看版本号


2.png


可以看出已经安装成功,接下来就是把 Nest 开发的项目部署到服务器上。

首先把整个项目(不是打包后的,至于为什么请看【Nest教程】Nest项目部署在ubuntu服务器)通过 FTP 上传到服务器指定目录,再进入项目根目录安装依赖之后再打包,生成 dist 文件。


3.png


1 启动项目

我的项目启动文件是 main.js。用 PM2 启动方式如下


4.png


 查看启动结果


5.png


6.png


2 查看日志


7.png


8.png


此时屏幕上会同时输出 error log 和 实时 log , 同时会打印出日志文件的路径。如果想查询指定日志,用 tail 命令即可。

日志其他操作


9.png


3 停止项目


10.png


4 重启项目


11.png


5 删除项目


12.png


四 高级用法

1 重命名


13.png


2 监听


14.png


3 集群模式


15.png


4 开机自启


16.png


5 环境切换

PM2 通过 env 选项声明多个环境配置,规则如下 env 为默认的环境配置(生产环境),env_dev、env_test 则分别是开发、测试环境。可以通过 process.env.REMOTE_ADDR 等来读取配置中的环境变量。


17.png


启动指定环境也很简单


18.png


6 帮助

通过 -- help 命令可以看到 PM2 支持的子命令还是蛮多的,可以自己查询用法,也可以去官网查看详细文档。

发布于: 刚刚阅读数: 3
用户头像

青年码农

关注

还未添加个人签名 2022.08.02 加入

还未添加个人简介

评论

发布
暂无评论
浅析PM2实用入门指南_Node_青年码农_InfoQ写作社区