HttpArena
Frameworks

vanilla-epoll

Engine · V · engine: epoll

vanilla is a minimalist, high-performance HTTP server written in V: multi-threaded, non-blocking epoll I/O, lock-free, copy-free, SO_REUSEPORT. Handlers are pure (request)->[]u8 returning raw response bytes. JSON is built in a single allocation with precomputed prefixes (no per-request reflection); json-comp gzips on Accept-Encoding; json-tls terminates TLS 1.3 (Mbed TLS 4) on :8081 with ALPN http/1.1, reusing the same allocation-free /json serializer; static assets are preloaded into memory; fortunes renders the DB rows + a runtime row with HTML escaping; async-db uses the stdlib db.pg ConnectionPool. Pinned V 0.5.1 (prebuilt release). crud uses an in-memory cache-aside (X-Cache MISS/HIT, invalidated on update) — no Redis required.

Composite rank

Each profile of a family is worth 100 to the entry that leads it, and the composite is the sum over the family. The field is this entry's own league: engines and reverse proxies are scored apart from frameworks. How it works.

FamilyRankComposite
HTTP/1.16 of 34280

Every result

Alpha Round, 21 runs. Requests per second is the best of three; latency, CPU and memory come from that run.

CategoryProfileConnsReq/secAvgp99CPUMemory
ConnectionBaseline5123,657,649139us583us6461.8%77MiB
ConnectionBaseline4,0964,056,0511.01ms6.58ms6445.9%160MiB
ConnectionPipelined51239,432,674207us3.30ms6742.4%74MiB
ConnectionPipelined4,09639,426,4571.66ms7.85ms6478.5%166MiB
ConnectionShort-lived512994,532506us4.76ms3197.6%67MiB
ConnectionShort-lived4,096990,3664.12ms41.30ms3027.6%71MiB
WorkloadJSON4,0962,109,5381.39ms36.50ms6166.4%160MiB
WorkloadJSON Comp5122,106,914124us1.06ms6261.3%89MiB
WorkloadJSON Comp4,0962,323,3621.59ms38.30ms6218.4%110MiB
WorkloadJSON Comp16,3842,342,6526.63ms166.30ms6112.1%118MiB
WorkloadJSON TLS4,0961,500,47920.32ms1.03s6155.2%450MiB
WorkloadUpload322,96010.77ms35.10ms2046.4%134MiB
WorkloadUpload2563,00977.93ms266.20ms3666.7%292MiB
WorkloadStatic1,0241,795,117343.79us4.53ms5754.1%99MiB
WorkloadStatic4,0961,784,1031.26ms7.29ms5421.0%222MiB
WorkloadStatic6,8001,743,7172.15ms61.21ms5209.6%312MiB
DatabaseAsync DB1,024271,730863us7.73ms2935.3%154MiB
DatabaseCRUD4,096317,37211.20ms75.80ms795.9%217MiB
DatabaseFortunes1,024171,0384.57ms12.10ms6262.3%258MiB
Multi-endpointAPI-425664,4691.96ms13.40ms372.2%114MiB
Multi-endpointAPI-161,024245,0711.75ms14.80ms1498.5%180MiB

How the benchmark is run · The machine · Add or fix an entry