Client and servers are run on independent machines. Each one has the following.
OS: Ubuntu
Kernel: 3.14.5-031405
RAM: 24GB
CPU: 2 sockets, each socket has a quad core 2.5ghz processor.
Processor topology: https://gist.github.com/kellabyte/8546939
The HTTP response is identical on both servers so that constructing the response is equal on both.
curl -v http://server:8080/
* Hostname was NOT found in DNS cache
* Trying server...
* Connected to server (server) port 8080 (#0)
> GET / HTTP/1.1
> User-Agent: curl/7.35.0
> Host: server:8080
> Accept: */*
>
< HTTP/1.1 200 OK
< date: Wed, 05 Nov 2014 14:36:11 GMT
* Server h2o/0.1 is not blacklisted
< server: h2o/0.1
< connection: keep-alive
< content-length: 10
< content-type: text/html
< last-modified: Tue, 04 Nov 2014 19:03:14 GMT
< etag: "545922f2-a"
<
It works!
* Connection #0 to host server left intact
curl -v http://server:8000/
* Hostname was NOT found in DNS cache
* Trying server...
* Connected to server (server) port 8000 (#0)
> GET / HTTP/1.1
> User-Agent: curl/7.35.0
> Host: server:8000
> Accept: */*
>
< HTTP/1.1 200 OK
* Server Haywire/master is not blacklisted
< Server: Haywire/master
< Date: Fri, 31 Aug 2011 00:31:53 GMT
< Content-Type: text/html
< Connection: Keep-Alive
< Last-Modified: Tue, 04 Nov 2014 19:03:14 GMT
< etag: 545922f2-a
< Content-Length: 12
<
It works!
* Connection #0 to host server left intact
Server threads: 8
Client threads: 8
---------------------------------------------------------------------------------------
Server | Client conns | pipelined | req/sec | 50% | 75% | 90% | 99% |
---------------------------------------------------------------------------------------
h2o | 16 | 0 | 48,653 | 215us | 295us | 383us | 527us |
haywire | 16 | 0 | 39,298 | 162us | 269us | 1.50ms | 2.90ms |
h2o | 32 | 0 | 79,309 | 260us | 453us | 681us | 2.41ms |
haywire | 32 | 0 | 55,075 | 201us | 3.19ms | 3.19ms | 3.61ms |
h2o | 64 | 0 | 82,358 | 880us | 1.19ms | 1.34ms | 6.09ms |
haywire | 64 | 0 | 78,220 | 324us | 641us | 1.35ms | 9.14ms |
h2o | 128 | 0 | 77,003 | 1.40ms | 2.28ms | 2.70ms | 3.25ms |
haywire | 128 | 0 | 75,579 | 990us | 1.25ms | 2.57ms | 3.22ms |
h2o | 256 | 0 | 77,427 | 3.16ms | 3.47ms | 3.94ms | 6.46ms |
haywire | 256 | 0 | 75,669 | 3.49ms | 3.69ms | 3.85ms | 4.06ms |
Server threads: 8
Client threads: 8
-------------------------------------------------------------------------------------------
Server | Client conns | pipelined | req/sec | 50% | 75% | 90% | 99% |
-------------------------------------------------------------------------------------------
h2o | 32 | 16 | 164,958 | 3.38ms | 3.65ms | 3.82ms | 5.67ms |
haywire | 32 | 16 | 157,165 | 727us | 40.67ms | 42.84ms | 42.84ms |
h2o | 32 | 32 | 173,653 | 1.95ms | 6.96ms | 9.78ms | 40.42ms |
haywire | 32 | 32 | 198,415 | 2.30ms | 41.67ms | 44.80ms | 45.17ms |
h2o | 32 | 64 | 181,412 | 15.45ms | 16.88ms | 18.79ms | 19.41ms |
haywire | 32 | 64 | 340,526 | 3.10ms | 40.91ms | 42.18ms | 46.19ms |
h2o | 32 | 128 | 260,223 | 22.28ms | 24.53ms | 25.21ms | 27.53ms |
haywire | 32 | 128 | 410,503 | 5.09ms | 10.92ms | 41.56ms | 41.79ms |
h2o | 32 | 256 | 251,687 | 28.44ms | 53.99ms | 74.39ms | 75.34ms |
haywire | 32 | 256 | 443,995 | 10.85ms | 12.72ms | 14.74ms | 17.76ms |
h2o | 32 | 512 | 329,333 | 43.64ms | 78.43ms | 100.38ms | 165.28ms |
haywire | 32 | 512 | 376,934 | 26.15ms | 28.94ms | 31.95ms | 41.67ms |
h2o | 64 | 16 | 155,646 | 6.18ms | 8.65ms | 9.54ms | 10.02ms |
haywire | 64 | 16 | 196,189 | 1.86ms | 42.56ms | 43.25ms | 43.38ms |
h2o | 64 | 32 | 284,971 | 8.40ms | 10.07ms | 11.19ms | 16.32ms |
haywire | 64 | 32 | 276,116 | 2.65ms | 43.16ms | 44.72ms | 45.28ms |
h2o | 64 | 64 | 243,008 | 18.21ms | 18.88ms | 20.46ms | 22.80ms |
haywire | 64 | 64 | 466,975 | 4.72ms | 6.40ms | 7.50ms | 41.63ms |
h2o | 64 | 128 | 258,228 | 32.38ms | 35.69ms | 56.98ms | 62.69ms |
haywire | 64 | 128 | 467,545 | 9.94ms | 13.13ms | 14.25ms | 16.08ms |
h2o | 64 | 256 | 282,101 | 72.19ms | 75.03ms | 77.65ms | 78.46ms |
haywire | 64 | 256 | 439,584 | 26.60ms | 29.73ms | 32.81ms | 35.82ms |
h2o | 64 | 512 | 340,518 | 115.21ms | 177.32ms | 184.43ms | 226.76ms |
haywire | 64 | 512 | 332,847 | 40.73ms | 66.06ms | 95.12ms | 274.79ms |