如何使用 PM2 在 Node.js 应用程序中实现集群?

在 Node.js 应用程序中,当流量逐渐增大时,单个进程可能无法处理所有请求。这时可以使用 PM2,从而使其在多个进程之间分配请求,并在单个进程由于任何原因挂掉时保持应用程序的稳定性和连续性。

什么是 PM2?

PM2 是一个用于管理 Node.js 应用程序的工具,在生产环境中非常有用。它会监控应用程序并处理自动重启,负载均衡以及更多功能。使用 PM2,您可以从单个终端会话运行和维护多个 Node.js 应用程序。

在 Node.js 应用程序中启用集群模式

使用集群模式可以使应用程序在多个进程之间分配请求。以下是在 Node.js 应用程序中使用集群模式的示例代码:

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

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

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

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

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

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

在此代码中,我们创建了一个 Node.js 服务器,并在主进程中启用了集群模式。如果您希望在几台机器上运行应用程序,则无需更改任何内容即可使用 PM2。

在 PM2 中启用集群模式

要在 PM2 中启用集群模式,请使用以下命令:

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

在此命令中,我们将 app.js 作为我们想要运行的文件指定,并使用 -i 标志指定需要启动的进程数。当您运行此命令时,PM2 将为该应用程序启动 4 个不同的进程。

您可以通过以下命令列表查看当前在 PM2 中运行的所有应用程序:

--- ----

您还可以使用以下命令显示每个应用程序的详细信息:

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

管理应用程序的状态

在 PM2 中,您可以使用以下命令管理应用程序的状态:

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

结论

在 Node.js 应用程序中,使用 PM2 启用集群模式可以通过增加进程数量来缓解负载压力。在 PM2 的帮助下,实现集群非常简单,并且可以通过一些简单的命令行工具在运行时管理进程。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/66fa5e0c44713626014bcb80