pm2常用命令

pm2 是一个带有负载均衡功能的Node应用的进程管理器.当你要把你的独立代码利用全部的服务器上的所有CPU,并保证进程永远都活着,0秒的重载, PM2是完美的,下面我们来看pm2常用的命令用法介绍吧。

PM2 (github上的源码)是开源的基于Nodejs的进程管理器,包括守护进程,监控,日志的一整套完整的功能,基本是Nodejs应用程序不二的守护进程选择,事实上它并不仅仅可以启动Nodejs的程序,只要是一般的脚本的程序它同样可以胜任。

以下是pm2常用的命令行

安装pm2

npm install -g pm2

 

用法

$ npm install pm2 -g   # 命令行安装 pm2

$ pm2 start app.js -i 4 #后台运行pm2,启动4个app.js

                # 也可以把'max' 参数传递给 start

                # 正确的进程数目依赖于Cpu的核心数目

$ pm2 start app.js --name my-api # 命名进程

$ pm2 list        # 显示所有进程状态

$ pm2 monit       # 监视所有进程

$ pm2 logs        # 显示所有进程日志

$ pm2 stop all      # 停止所有进程

$ pm2 restart all    # 重启所有进程

$ pm2 reload all     # 0秒停机重载进程 (用于 NETWORKED 进程)

$ pm2 stop 0       # 停止指定的进程

$ pm2 restart 0     # 重启指定的进程

$ pm2 startup      # 产生 init 脚本 保持进程活着

$ pm2 web        # 运行健壮的 computer API endpoint (http://localhost:9615)

$ pm2 delete 0      # 杀死指定的进程

$ pm2 delete all     # 杀死全部进程

 

运行进程的不同方式:

$ pm2 start app.js -i max # 根据有效CPU数目启动最大进程数目

$ pm2 start app.js -i 3   # 启动3个进程

$ pm2 start app.js -x    #用fork模式启动 app.js 而不是使用 cluster

$ pm2 start app.js -x -- -a 23  # 用fork模式启动 app.js 并且传递参数 (-a 23)

$ pm2 start app.js --name serverone # 启动一个进程并把它命名为 serverone

$ pm2 stop serverone    # 停止 serverone 进程

$ pm2 start app.json    # 启动进程, 在 app.json里设置选项

$ pm2 start app.js -i max -- -a 23          #在--之后给 app.js 传递参数

$ pm2 start app.js -i max -e err.log -o out.log # 启动 并 生成一个配置文件

你也可以执行用其他语言编写的app ( fork 模式):

$ pm2 start my-bash-script.sh  -x --interpreter bash

$ pm2 start my-python-script.py -x --interpreter python

 

0秒停机重载:

这项功能允许你重新载入代码而不用失去请求连接。

注意:

仅能用于web应用

运行于Node 0.11.x版本

运行于 cluster 模式(默认模式)

$ pm2 reload all

 

CoffeeScript:

$ pm2 start my_app.coffee #这就是全部

 

PM2准备好为产品级服务了吗?

只需在你的服务器上测试

$ git clone https://github.com/Unitech/pm2.git

$ cd pm2

$ npm install # 或者 npm install --dev ,如果devDependencies 没有安装

$ npm test

### PM2 常用命令及其用法 PM2 是一个用于管理 Node.js 应用的进程管理工具,支持多进程启动、监控、日志查看以及集群模式运行等功能。以下是一些常用的 PM2 命令及其具体使用方法: #### 启动和命名应用 - 启动一个 Node.js 应用并指定其名称: ```bash pm2 start app.js --name my-api ``` 这条命令会以后台模式启动 `app.js` 文件,并将其命名为 `my-api` [^3]。 - 启动多个实例(集群模式): ```bash pm2 start app.js -i 4 ``` 使用 `-i` 参数可以指定启动的应用实例数量,在这里为 4 个实例 [^3]。 #### 查看应用信息 - 显示所有正在运行的进程状态: ```bash pm2 list ``` 此命令将列出所有由 PM2 管理的应用程序,包括它们的状态、内存使用情况等 [^3]。 - 对应用进行排序查看: ```bash pm2 list --sort name:desc ``` 可以通过添加 `--sort` 参数对列表按照特定字段如名称、ID、PID、内存或 CPU 使用情况进行升序或降序排列 [^2]。 - 查看某个应用详情: ```bash pm2 describe app_name|app_id ``` 或者更详细的展示: ```bash pm2 show app_name|app_id ``` 这两条命令都可以用来获取关于特定应用的详细信息 [^2]。 #### 监控与日志 - 实时监视所有进程的信息(CPU、内存、日志、运行状态等): ```bash pm2 monit ``` 这个命令会在终端上显示一个仪表盘,提供直观的应用性能指标 [^1]。 - 显示所有进程的日志输出: ```bash pm2 logs ``` 如果需要实时跟踪日志,这个命令非常有用 [^3]。 #### 控制应用生命周期 - 停止指定应用: ```bash pm2 stop app_name|app_id ``` 该命令允许停止单个或者多个应用 [^2]。 - 重启指定应用: ```bash pm2 restart app_name|app_id ``` 在更新代码后通常会使用此命令来重新加载应用 [^2]。 - 0 秒停机重载进程(适用于网络服务): ```bash pm2 reload all ``` 与 `restart` 不同,`reload` 可以实现无缝重启,不会中断当前连接 [^3]。 - 删除指定应用: ```bash pm2 delete app_name|app_id ``` 当修改了配置文件或脚本入口点时,建议先删除再重新启动应用以确保更改生效 [^2]。 #### 其他实用功能 - 清除保存的应用列表: ```bash pm2 cleardump ``` - 保存当前应用列表以便之后恢复: ```bash pm2 save ``` - 重新加载之前保存的应用列表: ```bash pm2 resurrect ``` - 设置开机自启: ```bash pm2 startup ``` 此命令会生成一个初始化脚本,使得 PM2 管理的应用能够在系统重启后自动启动 [^3]。 - 运行内置的 HTTP API 端点: ```bash pm2 web ``` 默认情况下,这将在本地主机上的 9615 端口启动一个健壮的计算机 API 终端 [^3]。 这些只是 PM2 提供的部分功能和相关命令。根据不同的需求,还可以探索更多高级特性和选项。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值