HttpArena
Frameworks

trillium

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

Trillium 1.x async Rust web framework on tokio. trillium-rustls for TLS (h1 + h2 via ALPN), trillium-quinn for HTTP/3, trillium-websockets for /ws, trillium-static for /static/* served from disk per request, trillium-compression middleware for runtime gzip/brotli, trillium-api for JSON handlers, trillium-grpc for the benchmark.BenchmarkService gRPC endpoints, deadpool-postgres for async-db and crud.

Achievements

🥈 1 Silver · 🥉 3 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
🥈 SilverTest profileGateway · Gateway (H3)2 of 3
🥉 BronzeFamily compositeComposite · Gateway3 of 4
🥉 BronzeFamily compositeComposite · HTTP/33 of 11
🥉 BronzeWithin its languageRust · HTTP/23 of 4

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.126 of 723203
HTTP/210 of 20750
HTTP/33 of 11881
Gateway3 of 41215
gRPC4 of 4377
WebSocket17 of 20391

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,096596,4282.48ms8.76ms6042.1%208MiB
ConnectionPipelined4,0962,942,21010.44ms44.20ms6337.3%225MiB
ConnectionShort-lived4,096511,5401.06ms2.24ms2397.7%219MiB
ConcurrencyAsync Delay32,000407,24959.94ms89.20ms3325.1%1.5GiB
EfficiencyLatency-10K1,0249,91278.6us107.0us25.0%159MiB
EfficiencyLatency-1M1,024632,6753448769.4us7055360.0us6343.3%159MiB
EfficiencyLatency-500K/81,024281,6453770307.6us7960576.0us772.3%73MiB
WorkloadJSON Comp4,096112,5717.53ms23.00ms6247.4%762MiB
WorkloadJSON Comp16,384110,84811.13ms39.20ms6011.9%774MiB
WorkloadJSON TLS4,096613,7086.08ms31.96ms6468.7%418MiB
Workload8Gbit51248,662103.5us149.0us242.5%228MiB
WorkloadStatic TLS1,024541,0371.84ms17.72ms6401.1%514MiB
DatabaseAsync DB1,024214,1633.85ms5.89ms3256.4%241MiB
DatabaseFortunes1,024207,2013.67ms5.77ms5009.9%319MiB
HTTP/2Baseline2561,113,60521.38ms128.25ms5457.2%950MiB
HTTP/2Baseline1,0241,242,17656.55ms472.83ms5325.8%3.8GiB
HTTP/2Static25620,151375.70ms1.32s4108.2%1.8GiB
HTTP/2Static1,02418,4191.08s3.12s3762.7%2.5GiB
HTTP/2Baseline (h2c)2561,281,40219.50ms130.96ms5258.6%897MiB
HTTP/2Baseline (h2c)1,0241,151,87952.70ms501.63ms5493.4%3.1GiB
HTTP/2Baseline (h2c)4,0961,237,468116.22ms1.51s5530.5%9.6GiB
HTTP/2JSON (h2c)1,024955,86223.90ms351.72ms5717.6%1.9GiB
HTTP/2JSON (h2c)4,096928,50980.97ms3.98s5668.6%4.9GiB
HTTP/3Baseline64425,1269.57ms108.34ms2539.1%301MiB
HTTP/3Static64219,3498.67ms84.39ms2439.4%507MiB
gRPCUnary256690,05137.03ms268.99ms5421.3%467MiB
gRPCUnary1,024709,41294.45ms852.82ms5595.0%1.4GiB
gRPCUnary TLS256760,67332.90ms75.69ms5288.4%440MiB
gRPCUnary TLS1,024650,980108.68ms846.26ms5682.8%1.4GiB
GatewayGateway (H2)51281,132187.09ms2.55s5405.6%3.0GiB
GatewayGateway (H2)1,02475,235366.37ms4.73s5125.8%5.8GiB
GatewayGateway (H3)6482,60624.65ms91.07ms4092.8%896MiB
GatewayGateway (H3)25660,594130.93ms809.28ms2788.9%1.9GiB
WebSocketEcho512440,2971.10ms2.52ms3279.7%306MiB
WebSocketEcho4,096355,2523.96ms11.00ms3987.8%602MiB
WebSocketEcho16,384342,66219.51ms29.70ms3660.7%1.8GiB
WebSocketEcho Pipelined5129,127,299829us1.98ms3753.9%292MiB
WebSocketEcho Pipelined4,0967,857,9002.84ms9.28ms4070.6%659MiB
WebSocketEcho Pipelined16,3846,786,7009.59ms18.80ms3387.4%1.3GiB
WebSocketEcho Short-lived512270,939731us1.68ms2913.4%471MiB
WebSocketEcho Short-lived4,096272,378758us1.74ms2821.0%461MiB

Compared with

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

EntryCompositevs trillium
actix6799+112%head to head
tokio-uring3462+8%head to head
hyper3345+4%head to head
trillium-tuned3114-3%head to head
rocket3072-4%head to head

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

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