HttpArena
Frameworks

swerver

Engine · Zig

swerver as an engine: no pre-computed response bodies (pre-encoded registry off), JSON serialized per request through the framework's std.json-based ctx.jsonValue, static files served from an in-memory cache with precompressed .br/.gz negotiation, and the native async PostgreSQL client (pipelined, prepared-statement cache, park/resume) for async-db and fortunes. Single-threaded event loop per worker, SO_REUSEPORT fork fan-out, one multi-listener process for the four protocol ports, native HTTP/1.1 + HTTP/2 + HTTP/3 (QUIC), kqueue/epoll/io_uring backends.

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.14 of 34356
HTTP/23 of 6216
HTTP/33 of 375

Every result

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

CategoryProfileConnsReq/secAvgp99CPUMemory
ConnectionBaseline5123,519,409144us360us6487.1%1.0GiB
ConnectionBaseline4,0963,690,4821.11ms2.17ms6390.7%1.0GiB
ConnectionPipelined51224,027,148340us729us6808.4%1021MiB
ConnectionPipelined4,09624,258,8252.70ms3.39ms6612.6%1.0GiB
ConnectionShort-lived5122,306,414208us721us5783.2%1.0GiB
ConnectionShort-lived4,0962,630,8081.46ms3.26ms6285.8%1.1GiB
WorkloadJSON4,0961,897,0441.60ms4.73ms6475.8%1.1GiB
WorkloadJSON Comp512391,7231.30ms6.74ms5930.6%1.0GiB
WorkloadJSON Comp4,096427,4139.56ms26.30ms6399.4%1.1GiB
WorkloadJSON Comp16,384418,47038.86ms74.00ms6335.6%1.2GiB
WorkloadJSON TLS4,0961,522,0802.64ms-6523.0%1.3GiB
WorkloadUpload322,11915.07ms82.50ms1930.0%2.5GiB
WorkloadUpload2562,204112.56ms727.00ms5325.6%2.6GiB
WorkloadStatic1,0241,421,524446.67us-5636.1%1.1GiB
WorkloadStatic4,0961,333,4841.79ms-6184.8%1.3GiB
WorkloadStatic6,8001,196,8174.95ms-6388.0%1.4GiB
DatabaseAsync DB1,024370,7452.08ms15.90ms3795.8%1.1GiB
DatabaseFortunes1,024293,4141.49ms5.75ms4474.9%1.1GiB
HTTP/2Baseline2563,953,9505.35ms-5522.3%1.1GiB
HTTP/2Baseline1,0244,258,70919.28ms-6331.6%1.6GiB
HTTP/2Static2561,140,8156.93ms-6272.0%1.5GiB
HTTP/2Static1,0241,088,30328.17ms-6529.1%2.3GiB
HTTP/2Baseline (h2c)25612,592,5071.16ms-4197.4%1.1GiB
HTTP/2Baseline (h2c)1,02412,853,3894.23ms-4259.0%1.5GiB
HTTP/2Baseline (h2c)4,09611,766,88819.49ms-3976.7%3.0GiB
HTTP/2JSON (h2c)1,0244,673,0176.71ms-6489.7%1.5GiB
HTTP/2JSON (h2c)4,0964,651,86628.09ms-6349.1%3.1GiB
HTTP/3Baseline64907,6952.39ms6.67ms4240.3%1.2GiB
HTTP/3Static64403,355272us634us3411.1%1.2GiB

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