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

🥈 1 Silver · 🥉 4 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
🥉 BronzeWithin its languageRust · HTTP/23 of 5
🥉 BronzeWithin its languageRust · WebSocket3 of 5
🥉 BronzeTest profileEfficiency · Latency-10K3 of 91
🥉 BronzeTest profileGateway · Gateway (H3)3 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.139 of 913114
HTTP/210 of 281036
HTTP/34 of 14908
Gateway4 of 51191
gRPC7 of 8389
WebSocket15 of 27805

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,096574,7727.13ms12.90ms6310.2%417MiB
ConnectionPipelined4,0962,797,93523.06ms268.60ms6396.3%365MiB
ConnectionShort-lived4,096514,4427.95ms21.80ms5959.0%495MiB
ConcurrencyAsync Delay32,000594,86353.29ms80.00ms6064.1%1.4GiB
EfficiencyLatency-10K1,0249,98374.8us118.0us32.3%192MiB
EfficiencyLatency-1M1,024639,1323189567.0us9687040.0us6185.3%193MiB
EfficiencyLatency-500K/81,024276,2614397299.6us9367552.0us764.3%111MiB
WorkloadJSON Comp4,096110,56236.37ms79.20ms6253.1%1.0GiB
WorkloadJSON Comp16,38499,874160.71ms287.60ms6433.0%1.4GiB
WorkloadJSON TLS4,096526,7707.74ms34.40ms6249.0%503MiB
Workload8Gbit51249,15593.0us130.0us247.1%270MiB
WorkloadStatic TLS1,024490,3202.09ms31.82ms6380.1%912MiB
DatabaseAsync DB1,024229,5924.08ms6.72ms3557.5%256MiB
DatabaseFortunes1,024159,7826.02ms9.67ms4420.5%375MiB
HTTP/2Baseline2561,244,43321.45ms56.61ms5454.5%770MiB
HTTP/2Baseline1,0241,254,58476.23ms183.62ms5748.0%2.6GiB
HTTP/2Static256190,91043.10ms172.56ms6199.4%11.1GiB
HTTP/2Static1,024179,689173.49ms711.72ms6148.9%15.4GiB
HTTP/2Baseline (h2c)2561,381,23819.81ms103.67ms5407.8%836MiB
HTTP/2Baseline (h2c)1,0241,414,84869.96ms265.08ms5669.5%2.9GiB
HTTP/2Baseline (h2c)4,0961,343,323289.62ms911.77ms5256.3%10.1GiB
HTTP/2JSON (h2c)1,0241,179,71627.70ms113.30ms5540.8%1.3GiB
HTTP/2JSON (h2c)4,0961,059,700124.94ms524.01ms5858.0%4.6GiB
HTTP/3Baseline64427,71313.50ms199.13ms2596.2%416MiB
HTTP/3Static64226,7658.89ms46.95ms2574.6%701MiB
gRPCUnary256664,63441.03ms127.56ms5385.9%695MiB
gRPCUnary1,024652,387154.56ms511.20ms5703.7%2.2GiB
gRPCUnary TLS256784,14034.97ms109.37ms5448.0%935MiB
gRPCUnary TLS1,024796,764120.36ms282.31ms5787.1%2.6GiB
GatewayGateway (H2)51276,041197.65ms2.80s5713.4%2.8GiB
GatewayGateway (H2)1,02468,759405.07ms4.68s5308.3%5.5GiB
GatewayGateway (H3)6482,37524.71ms92.46ms4075.8%917MiB
GatewayGateway (H3)25660,216131.83ms809.02ms2921.6%2.4GiB
WebSocketEcho5121,692,428301us657us6529.4%351MiB
WebSocketEcho4,096425,6239.62ms12.40ms6516.5%868MiB
WebSocketEcho16,384406,00339.63ms45.80ms6201.0%3.0GiB
WebSocketEcho Pipelined51215,414,595530us1.07ms6683.9%325MiB
WebSocketEcho Pipelined4,09610,954,7235.98ms10.90ms6591.2%908MiB
WebSocketEcho Pipelined16,3846,918,06737.31ms44.70ms6209.8%2.9GiB
WebSocketEcho Short-lived5121,072,355394us4.73ms5302.1%482MiB
WebSocketEcho Short-lived4,096533,1626.74ms29.10ms5562.6%1.0GiB

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
actix6799+118%head to head
hyper3345+7%head to head
trillium3203+3%head to head
rocket3072-1%head to head
salvo2443-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