Skip to content
This repository has been archived by the owner on Apr 22, 2023. It is now read-only.

Commit

Permalink
bench: update static_http_server benchmark to new API
Browse files Browse the repository at this point in the history
Fixes #2016.
  • Loading branch information
koichik committed Nov 5, 2011
1 parent da82daf commit 1001cf4
Showing 1 changed file with 27 additions and 32 deletions.
59 changes: 27 additions & 32 deletions benchmark/static_http_server.js
@@ -1,48 +1,43 @@
var http = require("http");
var http = require('http');

var concurrency = 30;
var port = 12346;
var n = 7; // several orders of magnitude slower
var n = 700;
var bytes = 1024*5;

var requests = 0;
var responses = 0;

var body = "";
var body = '';
for (var i = 0; i < bytes; i++) {
body += "C";
body += 'C';
}

var server = http.createServer(function (req, res) {
var server = http.createServer(function(req, res) {
res.writeHead(200, {
"Content-Type": "text/plain",
"Content-Length": body.length
'Content-Type': 'text/plain',
'Content-Length': body.length
});
res.write(body);
res.close();
res.end(body);
})
server.listen(port);

function responseListener (res) {
res.addListener("end", function () {
if (requests < n) {
var req = res.client.request("/");
req.addListener('response', responseListener);
req.close();
requests++;
}
server.listen(port, function() {
var agent = new http.Agent();
agent.maxSockets = concurrency;

if (++responses == n) {
server.close();
}
});
}

for (var i = 0; i < concurrency; i++) {
var client = http.createClient(port);
client.id = i;
var req = client.request("/");
req.addListener('response', responseListener);
req.close();
requests++;
}
for (var i = 0; i < n; i++) {
var req = http.get({
port: port,
path: '/',
agent: agent
}, function(res) {
res.on('end', function() {
if (++responses === n) {
server.close();
}
});
});
req.id = i;
requests++;
}
});

0 comments on commit 1001cf4

Please sign in to comment.