node . js http.Get vs Google chrome $.得到,速度差

Node.js http.get vs google chrome $.get, difference in speed?

本文关键字:得到 速度 chrome Google js http Get vs node      更新时间:2023-09-26

所以我在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.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()

我发现它几乎比GET请求Google Chrome扩展慢3倍。我已经完全复制了头,但仍然有几乎100毫秒的速度差异。

有什么办法加快速度吗?

我发现时间大约50ms/请求与您相同的逻辑,所以我要假设你运行这个循环多次,并取平均值。如果是这种情况,那么您可能正在运行node <0.12和http.globalAgent.maxSockets的默认值为5(在您的情况下,一次只允许5个并发连接)。尝试将http.globalAgent.maxSockets = Infinity;设置为当前版本的Node中的设置。