限制与Node.js中同一主机的并发连接

时间:2014-05-18 22:03:37

标签: node.js http concurrency

为什么是代码(或任何类似的)

var http = require('http');
var async = require('async');

async.forever(function(next) {
    http.get('http://google.com', function(res) {
        next();
    });
});

使用最新发布的节点(0.10.28)仅执行5次?

2 个答案:

答案 0 :(得分:2)

默认情况下,Node发送带有Connection: Keep-Alive标头集的HTTP请求,因此在一次请求后不会关闭连接。默认情况下,同一服务器:端口的最大并发连接数设置为5.这由http.globalAgent.maxSockets属性控制。

实际上在文档中提到过但很难找到你不知道在哪里看或不只是阅读所有文档。此外,这些类现在正在重写,下一个版本将有不同的行为。

答案 1 :(得分:0)

看起来行为已经改变了(可能在之前的node7中),默认现在是无限制的连接量https://nodejs.org/docs/latest-v7.x/api/http.html#http_agent_maxsockets