HttpArena
Frameworks

trillium-tuned

Emerging · Rust · engine: trillium-http · tuned configuration · completeness 4/4

Trillium 1.x with one current_thread tokio runtime per CPU, SO_REUSEPORT TCP sharding (single QUIC endpoint for h3), tuned HttpConfig (larger response/body buffers, 64K h2 frames, eager body preallocation), and static files preloaded into memory at startup. sonic-rs for JSON, deadpool-postgres, mimalloc, trillium-grpc for the benchmark.BenchmarkService gRPC endpoints.

Achievements

🥈 2 Silver · 🥉 2 Bronze. Top three of a field, taken in this entry's own league: the family composite, the same composite among entries written in the same language, and each test profile it is scored on. Every field is the one the badges publish, so a medal and a badge always say the same thing. How medals are awarded.

MedalAwardFieldRank
🥈 SilverWithin its languageRust · gRPC2 of 3
🥈 SilverTest profileGateway · Gateway (H3)2 of 4
🥉 BronzeWithin its languageRust · HTTP/23 of 5
🥉 BronzeWithin its languageRust · WebSocket3 of 5

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, less 2.5% for each of routing, middleware, request and response the entry does not do for you - its completeness factor, which the WebSocket and gRPC families do not carry. The field is this entry's own league: engines and reverse proxies are scored apart from frameworks. How it works.

FamilyRankComposite
HTTP/1.136 of 933197
HTTP/210 of 281023
HTTP/34 of 11934
Gateway4 of 51233
gRPC7 of 8407
WebSocket13 of 25791

Every result

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

CategoryProfileConnsReq/secAvgp99CPUMemory
ConnectionBaseline4,096646,5706.34ms11.00ms6422.5%409MiB
ConnectionPipelined4,0962,863,13222.58ms260.70ms6348.5%307MiB
ConnectionShort-lived4,096567,6657.20ms20.10ms6215.4%501MiB
ConcurrencyAsync Delay32,000625,49750.74ms71.80ms6218.9%1.6GiB
EfficiencyLatency-10K1,0249,97982.7us113.0us31.7%201MiB
EfficiencyLatency-1M1,024575,6903812157.4us10932224.0us6193.9%196MiB
EfficiencyLatency-500K/81,024283,5924272784.8us9465856.0us781.5%88MiB
WorkloadJSON Comp4,096110,20036.92ms77.30ms6049.9%1003MiB
WorkloadJSON Comp16,38499,244161.38ms277.80ms6113.4%1.5GiB
WorkloadJSON TLS4,096543,1237.50ms29.58ms6320.4%483MiB
Workload8Gbit51249,34096.2us128.0us251.4%277MiB
WorkloadStatic TLS1,024567,4851.82ms44.32ms6443.2%1.1GiB
DatabaseAsync DB1,024225,5994.19ms7.21ms3318.1%278MiB
DatabaseFortunes1,024156,2666.08ms10.00ms4375.1%377MiB
HTTP/2Baseline2561,363,81719.15ms49.46ms5358.4%784MiB
HTTP/2Baseline1,0241,230,27678.25ms168.74ms5640.4%2.3GiB
HTTP/2Static256189,44643.94ms235.05ms6037.8%10.4GiB
HTTP/2Static1,024178,844174.48ms605.09ms6167.3%16.1GiB
HTTP/2Baseline (h2c)2561,378,97119.92ms92.31ms5088.2%739MiB
HTTP/2Baseline (h2c)1,0241,238,09979.55ms273.54ms5574.0%2.5GiB
HTTP/2Baseline (h2c)4,0961,331,506288.02ms972.46ms5251.6%9.1GiB
HTTP/2JSON (h2c)1,0241,178,20627.29ms93.26ms5559.9%1.4GiB
HTTP/2JSON (h2c)4,0961,050,194125.58ms532.43ms5261.4%4.4GiB
HTTP/3Baseline64438,92613.47ms235.54ms2517.9%385MiB
HTTP/3Static64233,52010.67ms69.88ms2481.2%709MiB
gRPCUnary256713,15439.04ms169.95ms5406.6%759MiB
gRPCUnary1,024732,549136.79ms434.07ms5710.1%2.2GiB
gRPCUnary TLS256805,65432.76ms74.78ms5252.6%693MiB
gRPCUnary TLS1,024785,063122.37ms281.49ms5753.8%1.9GiB
GatewayGateway (H2)51273,240203.56ms2.81s5533.1%3.0GiB
GatewayGateway (H2)1,02474,113376.17ms4.46s5735.1%5.6GiB
GatewayGateway (H3)6482,53724.66ms89.64ms4135.6%932MiB
GatewayGateway (H3)25665,13386.16ms519.66ms3347.4%1.1GiB
WebSocketEcho5121,655,808308us745us6401.7%343MiB
WebSocketEcho4,096424,7979.64ms12.50ms6223.5%952MiB
WebSocketEcho16,384406,99439.67ms56.30ms6562.4%3.0GiB
WebSocketEcho Pipelined51215,199,084538us1.02ms6677.1%340MiB
WebSocketEcho Pipelined4,09611,073,0945.92ms11.10ms6224.4%924MiB
WebSocketEcho Pipelined16,3846,925,71537.36ms45.50ms6213.0%3.1GiB
WebSocketEcho Short-lived5121,035,031412us4.52ms5250.8%546MiB
WebSocketEcho Short-lived4,096521,9256.95ms27.40ms5571.4%1.1GiB

Compared with

The Rust entries around trillium-tuned on the HTTP/1.1 composite, and the one leading them. The last column shows every profile side by side.

EntryCompositevs trillium-tuned
actix6880+115%head to head
hyper3345+5%head to head
trillium3261+2%head to head
rocket3112-3%head to head
salvo2480-22%head to head

Compare trillium-tuned with any Rust entry · Compare trillium-tuned with any entry, in any language · Every Rust entry, ranked

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