Question

I'm testing out nodejs (0.8.11).

with the following server app:

var http = require('http');
http.createServer(function (req, res) {
    console.log('hit!');
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.end('Hello World\n');
}).listen(1337, '127.0.0.1');
console.log('Server running at http://127.0.0.1:1337/');

I ran apache benchmark:

ab -r -v 4 'http://127.0.0.1:1337/'

I get the following output:

hit!
hit!
hit!
hit!
hit!
hit!
hit!
hit!
hit!
... (alot more)

output from ab:

Benchmarking 127.0.0.1 (be patient)...INFO: POST header == 
---
GET / HTTP/1.0
Host: 127.0.0.1:1337
User-Agent: ApacheBench/2.3
Accept: */*


---
LOG: header received:
HTTP/1.1 200 OK
Content-Type: text/plain
Date: Thu, 11 Oct 2012 06:40:04 GMT
Connection: close

Hello World

LOG: Response code = 200
..done


Server Software:        
Server Hostname:        127.0.0.1
Server Port:            1337

Document Path:          /
Document Length:        12 bytes

Concurrency Level:      1
Time taken for tests:   0.009 seconds
Complete requests:      1
Failed requests:        0
Write errors:           0
Total transferred:      113 bytes
HTML transferred:       12 bytes
Requests per second:    115.05 [#/sec] (mean)
Time per request:       8.692 [ms] (mean)
Time per request:       8.692 [ms] (mean, across all concurrent requests)
Transfer rate:          12.70 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        8    8   0.0      8       8
Processing:     0    0   0.0      0       0
Waiting:        0    0   0.0      0       0
Total:          9    9   0.0      9       9

and thinking the default number of requests isn't 1 as is specified in ab manual, i tried:

ab -v 4 -n 1 -c 1 'http://127.0.0.1:1337/'

I get the same output (alot of 'hits!' in the log)

What is going on here?

This is specific to node, I've tried the same with my jetty app, with ab -c 1 -n 1, there was only 1 recorded hit...

NOTE: I have tried with curling the node service - only 1 'hit!' in the log...

Was it helpful?

Solution

I have also posted this in the nodejs google group. Apparently this is a bug in the macosx lion version of apache / ab.

Original reply from the nodejs group:

https://groups.google.com/d/msg/nodejs/OqVZ4zPbqp0/DitO9xkmFOUJ

Also here is the direct link to the related page describing the problem.

OTHER TIPS

What is going on here?

Each 'hit' is new connection. Why it looks wrong from your point of view?

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top