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

时间:2017-06-09 08:16:21

标签: node.js libuv

  1. 我在这样的nodejs中编写了一个演示:
  2. hello.js:

    var http = require(‘http’);
    while(true){
        console.log(process.env.UV_THREADPOOL_SIZE);
    }
    
    1. 我使用'pstree -p |监控进程和线程启动上述程序后的grep节点。

    2. 我尝试了3种编辑线程大小的方法,但没有一种方法可行: 1)启动时设置参数:'UV_THREADPOOL_SIZE = 100节点hello.js' 2)在etc / profile中添加路径并重启系统:export UV_THREADPOOL_SIZE = 100 3)在代码中添加'process.env.UV_THREADPOOL_SIZE = 100'。

    3. 显示器的结果相同:

    4. enter image description here

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

      我的nodejs是v6.9.x.有人用过这个吗?

1 个答案:

答案 0 :(得分:1)

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

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