Skip to content

Instantly share code, notes, and snippets.

@kazuho
Last active August 29, 2015 14:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kazuho/8a42cab159dda582cd53 to your computer and use it in GitHub Desktop.
Save kazuho/8a42cab159dda582cd53 to your computer and use it in GitHub Desktop.
-- H2O
$ /usr/local/http2-14/bin/h2load -n2000000 -c500 -m100 http://127.0.0.1:8080/
starting benchmark...
spawning thread #0: 500 concurrent clients, 2000000 total requests
progress: 10% done
progress: 20% done
progress: 30% done
progress: 40% done
progress: 50% done
progress: 60% done
progress: 70% done
progress: 80% done
progress: 90% done
progress: 100% done
finished in 7.86s, 254578 req/s, 7.30MB/s
requests: 2000000 total, 2000000 started, 2000000 done, 2000000 succeeded, 0 failed, 0 errored
status codes: 2000000 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 60140306 bytes total, 12122306 bytes headers, 12000000 bytes data
min max mean sd +/- sd
time for request: 468us 588.53ms 170.95ms 85.26ms 63.33%
$ /usr/local/http2-14/bin/h2load -n2000000 -c500 -m100 http://127.0.0.1:8080/
starting benchmark...
spawning thread #0: 500 concurrent clients, 2000000 total requests
progress: 10% done
progress: 20% done
progress: 30% done
progress: 40% done
progress: 50% done
progress: 60% done
progress: 70% done
progress: 80% done
progress: 90% done
progress: 100% done
finished in 7.82s, 255864 req/s, 7.34MB/s
requests: 2000000 total, 2000000 started, 2000000 done, 2000000 succeeded, 0 failed, 0 errored
status codes: 2000000 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 60141042 bytes total, 12123042 bytes headers, 12000000 bytes data
min max mean sd +/- sd
time for request: 1.70ms 530.33ms 168.02ms 83.59ms 64.21%
$ /usr/local/http2-14/bin/h2load -n2000000 -c500 -m100 http://127.0.0.1:8080/
starting benchmark...
spawning thread #0: 500 concurrent clients, 2000000 total requests
progress: 10% done
progress: 20% done
progress: 30% done
progress: 40% done
progress: 50% done
progress: 60% done
progress: 70% done
progress: 80% done
progress: 90% done
progress: 100% done
finished in 7.73s, 258597 req/s, 7.42MB/s
requests: 2000000 total, 2000000 started, 2000000 done, 2000000 succeeded, 0 failed, 0 errored
status codes: 2000000 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 60141824 bytes total, 12123824 bytes headers, 12000000 bytes data
min max mean sd +/- sd
time for request: 434us 565.72ms 170.03ms 83.90ms 62.81%
$ /usr/local/http2-14/bin/h2load -n2000000 -c500 -m100 http://127.0.0.1:8080/4k.html
starting benchmark...
spawning thread #0: 500 concurrent clients, 2000000 total requests
progress: 10% done
progress: 20% done
progress: 30% done
progress: 40% done
progress: 50% done
progress: 60% done
progress: 70% done
progress: 80% done
progress: 90% done
progress: 100% done
finished in 15.48s, 129221 req/s, 507.81MB/s
requests: 2000000 total, 2000000 started, 2000000 done, 2000000 succeeded, 0 failed, 0 errored
status codes: 2000000 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 8241384844 bytes total, 12212000 bytes headers, 8192000000 bytes data
min max mean sd +/- sd
time for request: 2.23ms 1.21s 377.98ms 78.69ms 90.42%
$ /usr/local/http2-14/bin/h2load -n2000000 -c500 -m100 http://127.0.0.1:8080/4k.html
starting benchmark...
spawning thread #0: 500 concurrent clients, 2000000 total requests
progress: 10% done
progress: 20% done
progress: 30% done
progress: 40% done
progress: 50% done
progress: 60% done
progress: 70% done
progress: 80% done
progress: 90% done
progress: 100% done
finished in 14.64s, 136603 req/s, 536.83MB/s
requests: 2000000 total, 2000000 started, 2000000 done, 2000000 succeeded, 0 failed, 0 errored
status codes: 2000000 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 8241425721 bytes total, 12196015 bytes headers, 8192000000 bytes data
min max mean sd +/- sd
time for request: 10.53ms 1.19s 351.42ms 98.27ms 87.25%
$ /usr/local/http2-14/bin/h2load -n2000000 -c500 -m100 http://127.0.0.1:8080/4k.html
starting benchmark...
spawning thread #0: 500 concurrent clients, 2000000 total requests
progress: 10% done
progress: 20% done
progress: 30% done
progress: 40% done
progress: 50% done
progress: 60% done
progress: 70% done
progress: 80% done
progress: 90% done
progress: 100% done
finished in 14.43s, 138615 req/s, 544.73MB/s
requests: 2000000 total, 2000000 started, 2000000 done, 2000000 succeeded, 0 failed, 0 errored
status codes: 2000000 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 8241366000 bytes total, 12200500 bytes headers, 8192000000 bytes data
min max mean sd +/- sd
time for request: 24.78ms 1.00s 352.86ms 68.60ms 90.60%
-- nghttpd
$ /usr/local/http2-14/bin/h2load -n2000000 -c500 -m100 http://127.0.0.1:8080/
starting benchmark...
spawning thread #0: 500 concurrent clients, 2000000 total requests
progress: 10% done
progress: 20% done
progress: 30% done
progress: 40% done
progress: 50% done
progress: 60% done
progress: 70% done
progress: 80% done
progress: 90% done
progress: 100% done
finished in 15.65s, 127793 req/s, 4.02MB/s
requests: 2000000 total, 2000000 started, 2000000 done, 2000000 succeeded, 0 failed, 0 errored
status codes: 2000000 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 66050000 bytes total, 18038000 bytes headers, 12000000 bytes data
min max mean sd +/- sd
time for request: 9.46ms 698.29ms 373.28ms 60.73ms 88.56%
$ /usr/local/http2-14/bin/h2load -n2000000 -c500 -m100 http://127.0.0.1:8080/
starting benchmark...
spawning thread #0: 500 concurrent clients, 2000000 total requests
progress: 10% done
progress: 20% done
progress: 30% done
progress: 40% done
progress: 50% done
progress: 60% done
progress: 70% done
progress: 80% done
progress: 90% done
progress: 100% done
finished in 15.55s, 128646 req/s, 4.05MB/s
requests: 2000000 total, 2000000 started, 2000000 done, 2000000 succeeded, 0 failed, 0 errored
status codes: 2000000 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 66050000 bytes total, 18038000 bytes headers, 12000000 bytes data
min max mean sd +/- sd
time for request: 8.26ms 405.48ms 381.96ms 37.57ms 97.75%
$ /usr/local/http2-14/bin/h2load -n2000000 -c500 -m100 http://127.0.0.1:8080/
starting benchmark...
spawning thread #0: 500 concurrent clients, 2000000 total requests
progress: 10% done
progress: 20% done
progress: 30% done
progress: 40% done
progress: 50% done
progress: 60% done
progress: 70% done
progress: 80% done
progress: 90% done
progress: 100% done
finished in 15.59s, 128321 req/s, 4.04MB/s
requests: 2000000 total, 2000000 started, 2000000 done, 2000000 succeeded, 0 failed, 0 errored
status codes: 2000000 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 66050000 bytes total, 18038000 bytes headers, 12000000 bytes data
min max mean sd +/- sd
time for request: 11.40ms 408.67ms 383.00ms 37.45ms 97.37%
$ /usr/local/http2-14/bin/h2load -n2000000 -c500 -m100 http://127.0.0.1:8080/4k.html
starting benchmark...
spawning thread #0: 500 concurrent clients, 2000000 total requests
progress: 10% done
progress: 20% done
progress: 30% done
progress: 40% done
progress: 50% done
progress: 60% done
progress: 70% done
progress: 80% done
progress: 90% done
progress: 100% done
finished in 31.02s, 64470 req/s, 253.67MB/s
requests: 2000000 total, 2000000 started, 2000000 done, 2000000 succeeded, 0 failed, 0 errored
status codes: 2000000 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 8251548500 bytes total, 22038000 bytes headers, 8192000000 bytes data
min max mean sd +/- sd
time for request: 7.62ms 980.08ms 768.32ms 84.13ms 64.13%
$ /usr/local/http2-14/bin/h2load -n2000000 -c500 -m100 http://127.0.0.1:8080/4k.html
starting benchmark...
spawning thread #0: 500 concurrent clients, 2000000 total requests
progress: 10% done
progress: 20% done
progress: 30% done
progress: 40% done
progress: 50% done
progress: 60% done
progress: 70% done
progress: 80% done
progress: 90% done
progress: 100% done
finished in 30.64s, 65276 req/s, 256.84MB/s
requests: 2000000 total, 2000000 started, 2000000 done, 2000000 succeeded, 0 failed, 0 errored
status codes: 2000000 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 8251548500 bytes total, 22038000 bytes headers, 8192000000 bytes data
min max mean sd +/- sd
time for request: 15.58ms 1.26s 759.13ms 85.57ms 73.13%
$ /usr/local/http2-14/bin/h2load -n2000000 -c500 -m100 http://127.0.0.1:8080/4k.html
starting benchmark...
spawning thread #0: 500 concurrent clients, 2000000 total requests
progress: 10% done
progress: 20% done
progress: 30% done
progress: 40% done
progress: 50% done
progress: 60% done
progress: 70% done
progress: 80% done
progress: 90% done
progress: 100% done
finished in 28.59s, 69943 req/s, 275.20MB/s
requests: 2000000 total, 2000000 started, 2000000 done, 2000000 succeeded, 0 failed, 0 errored
status codes: 2000000 2xx, 0 3xx, 0 4xx, 0 5xx
traffic: 8251548500 bytes total, 22038000 bytes headers, 8192000000 bytes data
min max mean sd +/- sd
time for request: 9.32ms 984.23ms 708.11ms 67.24ms 71.91%
@kazuho
Copy link
Author

kazuho commented Feb 2, 2015

Servers were launched using following commands:

echo 'ulimit -n 1048576 ; exec /usr/local/http2-14/bin/nghttpd --no-tls -d tmp/htdocs 8080' | sudo sh -e
echo 'ulimit -n 1048576 ; exec ./h2o -c tmp/h2o.conf' | sudo sh -e

H2O @ 62289bc, built using qrintf-gcc with gcc 4.8.2
nghttp2 @ 9f5f724, built using gcc 4.8.2, ./configure --prefix=/usr/local/http2-14 --enable-hpack-tools --enable-app PKG_CONFIG_PATH=/usr/local/http2-14/lib/pkgconfig

Host: Ubuntu 14.04 running on AWS EC2 c3.8xlarge (/proc/cpuinfo says Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment