2. I ran the test again on in Virtual Box using CentOS 6.6 and here is my result
Requests: 11443 hits
Successful requests: 10911 hits
Network failed: 532 hits
Bad failed: 0 hits
Requests rate: 953 hits/sec
Test time: 12 sec
Recived: 23.44 KB
Throughput: 1.95 KB/sec
Conclusion : Clear Winner Go
Round 2 :
Node JS - 10000 workers 10 sec
Dispatching 10000 clients
Waiting for results...
Requests: 16949 hits
Successful requests: 2259 hits
Network failed: 14690 hits
Bad failed: 0 hits
Requests rate: 770 hits/sec
Test time: 22 sec
Recived: 105.89 KB
Throughput: 4.81 KB/sec
GO - 10000 workers 10 sec
Dispatching 10000 clients
Waiting for results...
Requests: 16511 hits
Successful requests: 2578 hits
Network failed: 13933 hits
Bad failed: 0 hits
Requests rate: 825 hits/sec
Test time: 20 sec
Recived: 113.95 KB
Throughput: 5.70 KB/sec
The Gab was suddenly closed ???
Round 3 :
Node JS - 20000 workers 10 sec
Dispatching 20000 clients
Waiting for results...
Requests: 26272 hits
Successful requests: 2725 hits
Network failed: 23547 hits
Bad failed: 0 hits
Requests rate: 437 hits/sec
Test time: 60 sec
Recived: 127.73 KB
Throughput: 2.13 KB/sec
GO - 20000 workers 10 sec
Dispatching 20000 clients
Waiting for results...
Requests: 30344 hits
Successful requests: 627 hits
Network failed: 29717 hits
Bad failed: 0 hits
Requests rate: 337 hits/sec
Test time: 90 sec
Recived: 29.34 KB
Throughput: 333.87B/sec
Now Node is faster .. at this point i had to change to another benchmark tool just to be sure ...
I had to use another tool
Node AB 20000
This is ApacheBench, Version 2.3 <$Revision: 1373084 $>
Benchmarking 192.168.1.136 (be patient)
Completed 2000 requests
Completed 4000 requests
Completed 6000 requests
Completed 8000 requests
Completed 10000 requests
Completed 12000 requests
Completed 14000 requests
Completed 16000 requests
Completed 18000 requests
Completed 20000 requests
Finished 20000 requests
Server Software:
Server Hostname: 192.168.1.136
Server Port: 1338
Document Path: /hello.html
Document Length: 48 bytes
Concurrency Level: 100
Time taken for tests: 59.133 seconds
Complete requests: 20000
Failed requests: 0
Write errors: 0
Total transferred: 2960000 bytes
HTML transferred: 960000 bytes
Requests per second: 338.22 [#/sec] (mean)
Time per request: 295.667 [ms] (mean)
Time per request: 2.957 [ms] (mean, across all concurrent requests)
Transfer rate: 48.88 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 1 0.4 1 32
Processing: 89 294 14.5 292 360
Waiting: 89 293 14.5 291 359
Total: 91 295 14.5 293 361
Percentage of the requests served within a certain time (ms)
50% 293
66% 296
75% 299
80% 301
90% 308
95% 318
98% 331
99% 336
100% 361 (longest request)
GO AB 20000
This is ApacheBench, Version 2.3 <$Revision: 1373084 $>
Benchmarking 192.168.1.136 (be patient)
Completed 2000 requests
Completed 4000 requests
Completed 6000 requests
Completed 8000 requests
Completed 10000 requests
Completed 12000 requests
Completed 14000 requests
Completed 16000 requests
Completed 18000 requests
Completed 20000 requests
Finished 20000 requests
Server Software:
Server Hostname: 192.168.1.136
Server Port: 1339
Document Path: /hello.html
Document Length: 48 bytes
Concurrency Level: 100
Time taken for tests: 144.231 seconds
Complete requests: 20000
Failed requests: 0
Write errors: 0
Total transferred: 3660000 bytes
HTML transferred: 960000 bytes
Requests per second: 138.67 [#/sec] (mean)
Time per request: 721.155 [ms] (mean)
Time per request: 7.212 [ms] (mean, across all concurrent requests)
Transfer rate: 24.78 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 5 118.0 1 3010
Processing: 93 715 3945.4 259 57121
Waiting: 92 467 2128.4 259 48120
Total: 94 720 3978.7 260 57122
Percentage of the requests served within a certain time (ms)
50% 260
66% 267
75% 271
80% 273
90% 280
95% 288
98% 3218
99% 21098
100% 57122 (longest request)
Node is till faster. I also noticed 3660000 bytes Transferred ???? and after checking the headers . it still does not explain why GO had higher returned transfer
Nodejs
HTTP/1.1 200 OK
Content-Type: text/html
Date: Sat, 03 Aug 2013 13:38:33 GMT
Connection: keep-alive
Transfer-Encoding: chunked
Go
HTTP/1.1 200 OK
Content-Type: text/html; charset=utf-8
Content-Length: 48
Date: Sat, 03 Aug 2013 13:38:10 GMT
Is this still a windows issue even if its running on VM or its something else that needs to be looked at ?