【问题标题】:Why are there multiple PM2 processes listed on my server?为什么我的服务器上列出了多个 PM2 进程?
【发布时间】:2016-04-25 11:31:51
【问题描述】:

我有一个使用 PM2 在生产服务器上运行的 Node 应用程序。当我ssh 进入服务器并运行htop 时,我可以看到列出了多个 PM2 God Daemon 进程。我不明白为什么会有多个进程,因为只有一个 Sails 应用程序通过 PM2 运行。

我的印象是 Node 应用程序只使用一个线程,所以我不确定为什么会列出多个 PM2 进程。有人可以帮助阐明这一点吗?

【问题讨论】:

    标签: node.js multithreading server daemon pm2


    【解决方案1】:

    这里的顶级作者:这些是您的进程的 threads。按大写H切换隐藏/显示线程,按F2进入设置屏幕,然后导航到“显示选项”并选中“[x]显示选项不同颜色的线”。这将使您能够将线程与常规进程区分开来。

    【讨论】:

    • 酷,感谢您添加此答案,因为它为所有对此主题感兴趣的人提供了进一步的解释和详细信息。也许值得默认显示不同颜色的线程?只是想为未来进一步改进这个伟大的工具。
    【解决方案2】:

    没有多个进程(至少不是在复制意义上)。您看到的是由于htop 中(子)进程的默认排序 表示。

    您可以按F5 切换到进程树的树表示。然后它将显示初始程序启动的所有子流程的分层表示,此处为:PM2。事实上,可能有不少。

    更多详情请看官方htopman page(在ubuntu.com)的描述:

    F5, t

    树视图:按父级组织进程,并将它们之间的关系布局为树。切换键将在树和您之前选择的排序视图之间切换。选择排序视图将退出树视图。

    希望对你有帮助。

    【讨论】:

    • 你错了,那些不是线程,它们是产生的多个 PM2 进程,每个进程都有自己的线程集。我现在遇到了同样的问题,目前产生了 20 个 - 我 100% 确定这一点,无法在此处发布屏幕截图。
    • 好吧,我的回答并没有说明这些是线程。再仔细阅读,或许能反映htop作者提供的其他答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-05-04
    • 2019-06-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多