代码地址:https://github.com/changeclass/Node_Blog_koa2.git

# pm2 介绍

  1. 安装 pm2

    npm i pm2 -g

    通过 pm2 --version 命令查看档期的版本

    image-20201024103515773

  2. 在 package.json 中编写启动的命令

    {
      "scripts": {
        "dev": "cross-env NODE_ENV=dev nodemon index.js",
        "prd":"cross-env NODE_ENV=production pm2 start index.js"
      }
    }
  3. 使用 pm2 启动

    image-20201024105817181

  4. 查看列表

    pm2 list

    image-20201024112256336

# 进程守护

pm2 如果遇到进程崩溃会自动重启

# 常用命令

  • 启动线程

    pm2 start ...

    后边可以加配置文件

  • 查看线程

    pm2 list

    image-20201024112929877

  • 重启

    pm2 restart <AppName>/<id>

    image-20201024112955786

  • 停止

    pm2 stop <AppName>/<id>
  • 删除

    pm2 delete <AppName>/<id>
  • 基本信息

    pm2 info <AppName>/<id>

    image-20201024113015346

  • 进程的日志

    pm2 log <AppName>/<id>

    image-20201024113029031

  • cpu 和内存信息

    pm2 monit <AppName>/<id>

    image-20201024113045619

# 配置

  1. 新建 pm2 配置文件,例如 pm2.config.json

    pm2 的配置文件格式用 json 格式。

    {
        "apps":{
            "name":"pm2-test-server",
            "script":"index.js",
            "watch":true,
            "ignore_watch":[
                "node_modules",
                "logs"
            ],
            "error_file":"logs/err.log",
            "out_file":"logs/out.log",
            "log_data_format":"YYYY-MM-DD HH:mm:ss"
        }
    }
    • name

      这个项目的名称

    • script

      项目入口文件

    • watch

      是否检测文件变化

    • ignore_watch

      忽略的文件的变化

    • error_file

      错误日志存放位置

    • out_file

      正常日志存放位置

    • log_data_format

      时间格式

  2. 修改启动命令,重启

    此时启动的便不是 js 文件,而是这个配置文件

    pm2 start pm2.config.json
  3. 访问 server,检查日志文件的内容

image-20201024210145602

# 多进程

在配置字段加入

{
    "apps":{
        "instances":4,
    }
}
更新于

请我喝[茶]~( ̄▽ ̄)~*

Dreamy.TZK 微信支付

微信支付

Dreamy.TZK 支付宝

支付宝