nodejs pm2 进程管理工具使用指南
nodejs pm2 进程管理工具使用指南
引言
nodeJS 发展的今天,无疑是一个巨大的成功。虽然目前还比不上服务端的 JAVA、PHP等语言,但是谁能保证明天呢?~!
pm2 简介
PM2.5是一个内置的负载平衡器Node.js应用生产过程管理。它允许您永久地保存应用程序,并在不停机的情况下重新加载它们
Install PM2
npm i -g pm2
使用方式
您可以使用命令的方式启动一个项目。但是本文推荐使用配置文件的方式启动项目。先说下命令吧。

重要的事情来了 如何使用配置文件~~~~
配置文件
Eg:
{
"apps" : [{
"name":"test",
"cwd":"/data/wwwroot/nodejs",
"script":"./test.sh",
"exec_interpreter":"bash",
"min_uptime": "60s",
"max_restarts": 30,
"exec_mode" :"cluster_mode",
"error_file" :"./test-err.log",
"out_file":"./test-out.log",
"pid_file":"./test.pid"
"watch": false
}]
}
| 键 | 值 | Eg | 描述 |
|---|---|---|---|
| Name | String | App | 程序名称 |
| Script | String | App.js | 主程序入口 |
| Cwd | String | “/data/wwwroot/nodejs” | 启动目录 |
| Args | String | “-a 13 -b 12” | 包含所有通过CLI脚本字符串参数 |
| Interpreter | S | “/usr/bin/python” | 启动脚本相 默认 nodejs |
| interpreter_args | S | ”–harmony” | |
| node_args | S | interpreter_args 的别名 | |
| instances | N | -1 | 启动应用程序数目 |
| exec_mode | S | “cluster” | 启动模式 可以是 “cluster” or “fork” 默认 fork |
| watch | S || Array | true | 启用监听功能 |
| ignore_watch | A | [”[/\]./”, “node_modules”] | 忽略的监听项 |
| max_memory_restart | S | '150M' | 程序超过指定内存就重新启动 |
| env | Obj | 环境变量 | |
| Env_ | obj | ||
| source_map_support | Boolean | true | 默认true 启动 source Map |
| instance_var | S | “NODE_APP_INSTANCE” | |
| log_date_format | S | “YYYY-MM-DD HH:mm Z” | 日志的日期格式 |
| error_file | S | 错误日志路径 | |
| out_file | S | 输出文件的路径 | |
| combine_logs | Boolean | ||
| merge_logs | Boolean | combine_logs的别名 | |
| pid_file | S | ||
| min_uptime | S | 最小运行时间 | |
| listen_timeout | N | 8000 | 如果程序没有监听 则会自动重启 |
| kill_timeout | N | 1600 | |
| wait_ready |
官网详细地址
http://pm2.keymetrics.io/docs/usage/application-declaration/#advanced-features
浙公网安备 33010602011771号