http.get()中的每秒请求数 - Node.js

时间:2012-09-24 07:33:54

标签: javascript node.js

我在node.js中正在做一个超级基本的http请求应用。

var http = require('http');

var options = {
  host: 'www.domain-here.com',
  port: 80,
  path: '/index.html'
};

for(var i = 0; i < 500; i++) {
    http.get(options, function(res) {
            console.log("[" + this.count + "] Response: " + res.statusCode);
    }.bind({ count: i })).on('error', function(e) {
            console.log("[" + this.count + "] Error: " + e.message);
    }.bind({ count: i }));
}

我需要每秒获取http请求的数量。我知道如何每秒获取请求吗?

2 个答案:

答案 0 :(得分:3)

// begin timestamp
var begin = new Date();

for(var i = 0; i < 500; i++) {
    http.get(options, function(res) {
            console.log("[" + this.count + "] Response: " + res.statusCode);
    }.bind({ count: i })).on('error', function(e) {
            console.log("[" + this.count + "] Error: " + e.message);
    }.bind({ count: i }));
}

// end timestamp
var end = new Date();

// Then, you need a simple calculation
var reqPerSec = i / ( end - begin );

答案 1 :(得分:0)

使用Date对象记录时间并在之后分析数字。

或者,如果您需要实时数据,可以将setInterval与计数器变量结合使用。