PM2 如何实现 Node.js 进程的集中管理

阅读时长 4 分钟读完

前置条件

在了解 PM2 如何实现 Node.js 进程的集中管理前,需要先对 Node.js 的进程模型以及常用的进程管理工具有一定的了解。同时,需要熟悉命令行的使用,以便能更好地运用 PM2。

什么是 PM2?

PM2 是一个高级的 Node.js 进程管理器,可用于管理 Node.js 应用程序的运行。使用 PM2,你可以轻松地管理 Node.js 应用的启动、停止、重启以及其他相关功能。

除此之外,PM2 还有以下特点:

  • 0 毫秒停机重载
  • 内建负载均衡(可以通过 PM2 运行多个进程)
  • 与 Node.js 发生错误时自动重启进程
  • 控制台里显示进程状态及相关信息
  • 可以在应用程式未打开的情况下使用,还可以监控未绑定端口的进程。

如何使用 PM2

以下是安装、启动和停止 PM2 的基本命令:

-- -------------------- ---- -------
-- -- ---
--- ------- --- --

-- ----
--- ----- ------

-- ----
--- ---- ---

-- ----
--- ------- ---

启动、停止和重启应用的命令与使用 Node.js 的命令相似,但需要使用 pm2 命令来替代 node 命令。

当使用 PM2 启动应用程序时,它会为每个应用程序创建一个进程。可以使用以下命令查看所有由 PM2 管理的进程:

PM2 还允许您更改进程的名称,以便更好地跟踪它们:

在这个例子中,PM2 将使用 my-app 作为应用程序的名称,而不是默认的 Node.js 文件名。

如果您的应用程序需要监视某些文件或目录的更改,则可以使用 PM2 的文件监视功能。以下命令可以启动一个应用程序并监视特定的文件或目录:

测试示例

下面我们来通过一个简单的示例来演示如何使用 PM2。

首先,我们需要在本地创建一个 Node.js 应用程序。以下是示例代码:

-- -------------------- ---- -------
-- ------
----- ---- - ---------------
----- ---- - ---------------- -- ----

----- ------ - ----------------------- ---- -- -
  -------------- - ---
  ----------------------------- -------------
  --------------- ----------
--

------------------- -- -- -
  ------------------- ------- -- ---------------------------
--

接下来,我们可以使用以下命令来使用 PM2 启动应用程序:

使用 pm2 list 命令,我们可以查看正在运行的所有进程:

如果您想为进程指定名称,可以使用 PM2 的 --name 选项:

这样,我们在 pm2 list 命令中将看到 my-app 的名称。

如果您的应用程序需要重新启动以响应代码更改,则可以在 pm2 start 命令中使用 --watch 标志启用文件监视:

这将在我们更改 Node.js 应用程序代码时自动重新启动应用程序。

总结

PM2 是一个非常强大的 Node.js 进程管理器,可以用于管理 Node.js 应用程序的启动、停止和重启。在这篇文章中,我们介绍了 PM2 的基本功能和用法,还给出了一个简单的示例。

如果您有兴趣深入了解 PM2 的详细功能,请查看官方文档。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/646347c0968c7c53b0449e33

纠错
反馈