1. pm2 简介

PM2 是一款非常优秀的 Node 进程管理工具,它有着丰富的特性:能够充分利用多核 CPU且能够负载均衡、能够帮助应用在崩溃后、指定时间(cluster model)和超出最大内存限制等情况下实现自动重启。

PM2 是开源的基于 Nodejs 的应用进程管理器,包括守护进程,监控,日志的一整套完整的功能

PM2 是一个带有负载均衡功能的 Node 应用进程管理器

2. pm2的主要特性

  • 内建负载均衡(使用 Node cluster 集群模块)
  • 后台运行
  • 0 秒停机重载,我理解大概意思是维护升级的时候不需要停机.
  • 具有 Ubuntu 和 CentOS 的启动脚本
  • 停止不稳定的进程(避免无限循环)
  • 控制台检测
  • 提供 HTTP API
  • 远程控制和实时的接口 API(Nodejs 模块,允许和 PM2 进程管理器交互)

    3. 常用命令

    3.1 pm2的安装与更新

    在使用pm2之前,我们还需要安装nodejs,这是前提
    下载nodejs:下载 | Node.js
    如何安装nodejs:请参考node安装

    3.1.1 pm2安装

    npm install pm2 -g

    yarn global add pm2

    3.1.2 pm2更新

    pm2 updated

    3.2 pm2 启动运行指定的程序

    通过pm2启动应用程序服务,守护进程

    3.2.1 正常启动应用程序

    pm2 start app.js
    pm2 start index.js

    3.3 pm2 停止指定运行的程序

    通过pm2停止正在运行的程序

    pm2 stop [AppName]

    3.3.1 停止特定的应用

    根据应用名停止指定应用

    pm2 stop [ID]

    3.3.2 停止所有的应用

    停止所有进程

    pm2 stop all

    3.4 重启所有进程

    3.4.1 重新启动

    restart命令同时杀死并重启所有进程。短时间内服务不可用。生成环境推荐使用reload

    pm2 restart all

    3.4.2 0秒停机重载

    重新启动所有进程,始终保持至少一个进程在运行

    pm2 reload app.js

    3.5 删除应用程序

    删除应用程序,就是不在让pm2维护这个应用程序

    3.5.1 删除指定的应用程序

    根据应用名关闭并删除应用

    pm2 delete [AppName]
    

  • 根据应用ID关闭并删除应用

    pm2 delete [ID]

    3.5.2 删除所有的应用

  • 关闭并删除所有的应用

    pm2 delete all

    3.6 显示所有进程状态

    pm2 list

    3.7 显示日志

    3.7.1 显示所有应用程序的日志

    pm2 logs

    3.7.2 显示特定的进程日志

  • 指定应用名查看应用日志

    pm2 logs [Name]

  • 指定应用ID查看应用日志

    pm2 logs [ID]

    3.8 查看每个应用占用情况

    pm2 monit

    3.9 显示应用程序所有信息

  • 根据name查看

    pm2 show [Name]

  • 根据id查看

    pm2 show [ID]

    原文链接:https://blog.csdn.net/sunyctf/article/details/130655852

  • End

    本文标题:PM2 | NodeJS应用进程管理工具—PM2的基本使用

    本文链接:https://www.atxrom.com/archives/16/

    除非另有说明,本作品遵循CC 4.0 BY-SA 版权协议

    声明:转载请注明文章来源。

    如果觉得我的文章对你有用,请随意赞赏