summaryrefslogtreecommitdiff
path: root/benchmark
diff options
context:
space:
mode:
authorkoichik <koichik@improvement.jp>2011-11-06 01:23:33 +0900
committerkoichik <koichik@improvement.jp>2011-11-06 01:25:07 +0900
commit1001cf412c38bdd06bf686af80c7cea0d2fa1155 (patch)
tree75993e8f650d97aa72e3d2706d6e56539ba64894 /benchmark
parentda82daf54c65b26112c020f4e2fe51a4ccab9041 (diff)
downloadnode-1001cf412c38bdd06bf686af80c7cea0d2fa1155.tar.gz
bench: update static_http_server benchmark to new API
Fixes #2016.
Diffstat (limited to 'benchmark')
-rw-r--r--benchmark/static_http_server.js59
1 files changed, 27 insertions, 32 deletions
diff --git a/benchmark/static_http_server.js b/benchmark/static_http_server.js
index d5b0bf7c4..488422443 100644
--- a/benchmark/static_http_server.js
+++ b/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++;
+ }
+});