H2O

the optimized HTTP/1.x, HTTP/2 server
Powered by Oktavia

About H2O

H2O is a very fast HTTP server written in C. It can also be used as a library.

Key Features

Benchmark

Remote Benchmark

Below chart shows the scores recorded on Amazon EC2 running two c3.8xlarge instances (server and client) on a single network placement7.

Local Benchmarks

The scores (requests/second.core) were recorded on Ubuntu 14.04 (x86-64) / VMware Fusion 7.1.0 / OS X 10.9.5 / MacBook Pro 15" Early 2013.

HTTP/1.18
Server \ size of content6 bytes4,096 bytes
h2o/0.9.075,48359,673
nginx/1.7.937,28943,988
HTTP/29
Server \ size of content6 bytes4,096 bytes
h2o/0.9.0272,300116,022
tiny-nghttpd (nghttpd@ab1dd11)198,01893,868
trusterd@cff8e15167,30667,600

Notes:

  1. also supports draft 14 and 16 for compatibility
  2. only usable at library level
  3. chacha20-poly1305; see also: Do the ChaCha: better mobile performance with cryptography
  4. automatically enabled
  5. internal memory is used as the storage
  6. HTTPS is not supported
  7. for reverse-proxy tests, another H2O process running on the same host was used as the upstream server
  8. used command: wrk -c 500 -d 30 -t 1; configuration file of nginx is here
  9. used command: h2load -c 500 -m 100 -n 2000000; configuration file of h2o is here