2

通过永远运行sails 或直接用 调用它node app.js --prod,根据htop我有一个看起来像它下面的克隆的4个子进程。

在此处输入图像描述

如果我忽略这个--prod论点,我会得到等量的咕噜声。如您所见,它们都使用相同数量的内存、不同的 PID 和不同的 TIME+ 读数。

我很确定它不是自动集群,是吗?这是一台单核机器(虚拟),所以我不知道这些进程是什么,还是 htop 中的错误?

根据这个问题htop-showing-multiple-java-processes-with-different-pids?rq=1

htop 将线程显示为不同的进程,但节点不是单线程的吗?如果这些是它们来自哪里的线程?

4

1 回答 1

1

您使用 htop 看到的线程是用户态线程(用户线程),但是当您在集群模式下运行应用程序(比如 4 个实例)时,它会生成内核线程。 更多关于用户线程

当你隐藏用户态线程时,你看到的就是内核线程。在集群模式下运行应用程序时,你将创建一个应用程序的多个内核线程。对于每个应用程序的内核线程,都有几个与之关联的用户态线程。

(对于 htop,您可以通过 F2 隐藏用户线程并显示选项)

请查看屏幕截图以获取说明。

我的应用程序的四个实例处于集群模式,因为核心数==4 在此处输入图像描述

ps 命令仅显示内核线程

htop 仅显示内核线程 在此处输入图像描述

htop 显示内核线程和用户态线程 在此处输入图像描述

在最后一个屏幕截图中,您看到了一些内核和用户态的线程,但还有更多。我的意思是每个内核线程都有一些与之相关的用户态线程。

于 2016-03-15T07:57:31.450 回答