Javascript Node.js http.get与google chrome$.get,速度有什么不同?
所以我在node.js中乱搞,并运行了以下代码:Javascript Node.js http.get与google chrome$.get,速度有什么不同?,javascript,jquery,node.js,xmlhttprequest,Javascript,Jquery,Node.js,Xmlhttprequest,所以我在node.js中乱搞,并运行了以下代码: var http = require("http"); function get() { var headers = { 'Accept-Encoding': 'gzip' }; var startedAt = new Date().getTime(); for (var i = 0; i < 1; i++) http.get({ host: "www
var http = require("http");
function get() {
var headers = {
'Accept-Encoding': 'gzip'
};
var startedAt = new Date().getTime();
for (var i = 0; i < 1; i++)
http.get({
host: "www.example.net",
path: "/catalog/",
header: headers
}, function (response) {
var body;
response.on('data', function (d) {});
response.on('end', function (e) {
console.log(new Date().getTime() - startedAt);
});
});
}
get()
我发现它比通过Google Chrome扩展获取请求要慢3倍。我已经准确地复制了标题,但速度仍然相差100毫秒
你知道如何加速吗?我发现使用相同逻辑的时间大约为50ms/请求,所以我假设你多次运行这个循环,并取平均值。如果是这种情况,那么您可能正在运行node<0.12的版本,并且http.globalAgent.maxSockets的默认值为5,在您的情况下一次只允许5个并发连接。 尝试设置http.globalAgent.maxSockets=Infinity;因为该设置在节点的当前版本中