Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Add switches to http_simple bench to use domains

  • Loading branch information...
commit 45c1d4f96f48c30bd3036938fb922e050e76c2e0 1 parent 10ce3d1
@isaacs isaacs authored
Showing with 23 additions and 1 deletion.
  1. +3 −1 benchmark/http.sh
  2. +20 −0 benchmark/http_simple.js
View
4 benchmark/http.sh
@@ -4,7 +4,9 @@ sudo sysctl -w net.inet.ip.portrange.first=12000
sudo sysctl -w net.inet.tcp.msl=1000
sudo sysctl -w kern.maxfiles=1000000 kern.maxfilesperproc=1000000
ulimit -n 100000
+
./node benchmark/http_simple.js || exit 1 &
sleep 1
-ab -n 30000 -c 100 http://127.0.0.1:8000/bytes/123 | grep Req
+
+ab -n 30000 -c 100 http://127.0.0.1:8000/${TYPE:-bytes}/${LENGTH:-1024} | grep Req
killall node
View
20 benchmark/http_simple.js
@@ -14,7 +14,27 @@ for (var i = 0; i < 20*1024; i++) {
stored = {};
storedBuffer = {};
+var useDomains = process.env.NODE_USE_DOMAINS;
+
+// set up one global domain.
+if (useDomains) {
+ var domain = require('domain');
+ var gdom = domain.create();
+ gdom.on('error', function(er) {
+ console.log('Error on global domain', er);
+ throw er;
+ });
+ gdom.enter();
+}
+
var server = http.createServer(function (req, res) {
+
+ if (useDomains) {
+ var dom = domain.create();
+ dom.add(req);
+ dom.add(res);
+ }
+
var commands = req.url.split("/");
var command = commands[1];
var body = "";
Please sign in to comment.
Something went wrong with that request. Please try again.