bench: update static_http_server benchmark to new API
authorkoichik <koichik@improvement.jp>
Sat, 5 Nov 2011 16:23:33 +0000 (01:23 +0900)
committerkoichik <koichik@improvement.jp>
Sat, 5 Nov 2011 16:25:07 +0000 (01:25 +0900)
Fixes #2016.

benchmark/static_http_server.js

index d5b0bf7..4884224 100644 (file)
@@ -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++;
+  }
+});