Icinga 2 是一款监控服务器,用于检查网络资源可用性、在故障时通知用户并生成性能数据。
Unitech/pm2
面向 Node.js 与 Bun 应用的生产环境进程管理器,内置负载均衡,可保持进程常驻并零停机重载。
- Star
- 43,311
- Fork
- 2,734
- 未关闭 Issue
- 1,109
- 最近提交
- 23小时前
这是什么?
PM2 是用于在生产环境中运行 Node.js 和 Bun 应用的进程管理器。它能让进程保持常驻,崩溃后自动重启,也可以管理 Python 脚本或 PATH 中的可执行程序。
集群模式会为 Node.js 应用启动多个实例,并在它们之间对 HTTP、TCP 和 UDP 流量做负载均衡,从而利用多核 CPU。重载命令可以在不停机的情况下更新正在运行的应用。PM2 还提供终端监控、日志查看与轮转,并能为 systemd、launchd 等初始化系统生成开机启动脚本,让进程随服务器一同恢复。
专用的 pm2-runtime 命令适合在 Docker 容器中运行应用。PM2 支持 Linux、macOS 和 Windows,兼容 Node.js 18 及以上版本与 Bun 1 及以上版本。
核心功能
- 01保持 Node.js、Bun、Python 等进程常驻,故障后自动重启。
- 02集群模式在多个实例之间对 HTTP、TCP 和 UDP 流量做负载均衡。
- 03支持对运行中的应用零停机重载。
- 04提供终端监控与日志查看,支持 JSON 和格式化输出。
- 05可为 systemd、launchd 等初始化系统生成开机启动脚本。
适用场景
- 在单台服务器上运行 Node.js API,并充分利用所有 CPU 核心。
- 使用 pm2-runtime 命令将应用部署到 Docker 容器中。
- 发布新版本时在不中断服务的情况下更新线上应用。
- 让后台服务在服务器重启后自动恢复运行。
快速上手
- 1
使用 npm 全局安装 PM2
npm install pm2 -g - 2
用 PM2 启动你的应用
pm2 start app.js - 3
列出正在运行的应用
pm2 list
使用前须知
- 采用 AGPL 3.0 许可证,属于 Copyleft 许可;其他授权需联系维护者。
- 需要 Node.js 18 及以上版本或 Bun 1 及以上版本。
标签
常见问题
- pm2 是什么?
- 面向 Node.js 与 Bun 应用的生产环境进程管理器,内置负载均衡,可保持进程常驻并零停机重载。 PM2 是用于在生产环境中运行 Node.js 和 Bun 应用的进程管理器。它能让进程保持常驻,崩溃后自动重启,也可以管理 Python 脚本或 PATH 中的可执行程序。
- pm2 可以免费使用吗?用的什么许可证?
- pm2 以 Other 许可证开源。用于商业产品前,请先确认许可证条款。
- pm2 还在维护吗?
- 活跃维护中。pm2 最近一次提交是在 2026年10月21日。
- pm2 适合用来做什么?
- 在单台服务器上运行 Node.js API,并充分利用所有 CPU 核心。 使用 pm2-runtime 命令将应用部署到 Docker 容器中。 发布新版本时在不中断服务的情况下更新线上应用。 让后台服务在服务器重启后自动恢复运行。
- pm2 怎么安装和运行?
- 使用 npm 全局安装 PM2: npm install pm2 -g 用 PM2 启动你的应用: pm2 start app.js 列出正在运行的应用: pm2 list
- 在哪里获取 pm2?
- 源代码和安装说明在 GitHub 上:https://github.com/Unitech/pm2
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
2241621C++GPL-3.0更新于 13小时前
一个更智能的 cd 命令,记住常用目录,几个按键即可跳转,支持主流 shell。
4万935RustMIT更新于 4天前
用于自定义官方 Spotify 桌面客户端的命令行工具,可改主题颜色、注入 CSS、扩展与自定义应用。
2.5万987JavaScriptLGPL-2.1更新于 11小时前
终端文件浏览工具,以可折叠的目录树导航,支持模糊搜索、文件操作、预览和 git 状态查看。
1.3万327RustMIT更新于 4天前
一体化 JavaScript/TypeScript 工具链,集运行时、打包器、测试运行器和包管理器于一个可执行文件。
9.6万5147RustOther更新于 前天