mirror of https://github.com/lukechilds/node.git
koichik
13 years ago
1 changed files with 27 additions and 32 deletions
@ -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) { |
|||
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) { |
|||
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(); |
|||
} |
|||
}); |
|||
} |
|||
|
|||
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(); |
|||
}); |
|||
req.id = i; |
|||
requests++; |
|||
} |
|||
}); |
|||
|
Loading…
Reference in new issue