Browse Source

Add switches to http_simple bench to use domains

v0.9.1-release
isaacs 13 years ago
parent
commit
45c1d4f96f
  1. 4
      benchmark/http.sh
  2. 20
      benchmark/http_simple.js

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 net.inet.tcp.msl=1000
sudo sysctl -w kern.maxfiles=1000000 kern.maxfilesperproc=1000000 sudo sysctl -w kern.maxfiles=1000000 kern.maxfilesperproc=1000000
ulimit -n 100000 ulimit -n 100000
./node benchmark/http_simple.js || exit 1 & ./node benchmark/http_simple.js || exit 1 &
sleep 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 killall node

20
benchmark/http_simple.js

@ -14,7 +14,27 @@ for (var i = 0; i < 20*1024; i++) {
stored = {}; stored = {};
storedBuffer = {}; 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) { 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 commands = req.url.split("/");
var command = commands[1]; var command = commands[1];
var body = ""; var body = "";

Loading…
Cancel
Save