如何在 nodejs 中设置 libuv 的线程大小


  1. 我在 nodejs 中编写了一个演示,如下所示:

您好.js:

var http = require(‘http’);
while(true){
    console.log(process.env.UV_THREADPOOL_SIZE);
}
  1. 启动上面的程序后,我用"pstree -p | grep node"监视进程和线程。

  2. 我已经尝试了 3 种方法来编辑线程大小,但没有一种有效:1( 启动时设置参数:"UV_THREADPOOL_SIZE=100 节点你好.js"2( 在 etc/配置文件中添加路径并重新启动系统:导出 UV_THREADPOOL_SIZE=1003(在代码中添加"process.env.UV_THREADPOOL_SIZE=100"。

  3. 监视器的结果是相同的:

在此处输入图像描述

节点进程中只有 5 个线程工作(4 个是工作线程,1 个是循环线程(

我的nodejs是v6.9.x。有没有人成功使用它?

您可以设置环境变量UV_THREADPOOL_SIZE ,截至撰写本文时,最大限制为 128。

如果需要,您还可以在节点应用程序中设置此 env 变量,而不是在 shell 中设置。

最新更新