HttpArena
Frameworks

aspnet-minimal

Flagship · C# · engine: kestrel · standard configuration · completeness 4/4

Minimal ASP.NET Core server using .NET 10 with Kestrel and minimal API routing.

Achievements

🥈 3 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
🥈 SilverFamily compositeComposite · gRPC2 of 4
🥈 SilverTest profilegRPC · Unary2 of 4
🥈 SilverTest profilegRPC · Unary TLS2 of 4
🥉 BronzeWithin its languageC# · HTTP/23 of 5
🥉 BronzeTest profileEfficiency · Latency-10K3 of 72
🥉 BronzeTest profileHTTP/3 · Baseline3 of 11

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.128 of 723164
HTTP/28 of 20925
HTTP/38 of 11376
gRPC2 of 41166
WebSocket11 of 20890

Every result

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

CategoryProfileConnsReq/secAvgp99CPUMemory
ConnectionBaseline4,0961,305,9462.67ms8.19ms5599.7%408MiB
ConnectionPipelined4,0966,821,0037.85ms20.30ms5559.6%341MiB
ConnectionShort-lived4,096456,3661.52ms12.40ms3439.3%141MiB
ConcurrencyAsync Delay32,000871,90427.15ms56.90ms4652.9%1.7GiB
EfficiencyLatency-10K1,0249,983103.0us129.0us145.9%164MiB
EfficiencyLatency-1M1,024997,932480.9us4474.0us4974.2%197MiB
EfficiencyLatency-500K/81,024299,0943956788.2us7874560.0us742.2%158MiB
WorkloadJSON Comp4,096337,51810.01ms34.40ms5871.1%554MiB
WorkloadJSON Comp16,384325,71714.57ms38.20ms5714.2%644MiB
WorkloadJSON TLS4,096501,1857.96ms96.85ms6002.4%782MiB
Workload8Gbit51249,306190.1us1736.0us899.7%219MiB
WorkloadStatic TLS1,02493,26111.06ms49.84ms6027.9%498MiB
DatabaseAsync DB1,024165,6545.64ms19.20ms3637.1%415MiB
DatabaseFortunes1,02477,92110.77ms33.20ms5329.1%491MiB
HTTP/2Baseline2562,220,50511.22ms82.75ms6117.8%920MiB
HTTP/2Baseline1,0241,956,24455.16ms253.50ms5401.9%3.1GiB
HTTP/2Static25673,392109.48ms896.12ms6001.4%3.2GiB
HTTP/2Static1,02454,245529.37ms4.34s5802.7%9.2GiB
HTTP/2Baseline (h2c)2562,732,4139.37ms54.79ms6281.1%1.4GiB
HTTP/2Baseline (h2c)1,0242,535,97440.89ms246.27ms5993.1%3.1GiB
HTTP/2Baseline (h2c)4,0961,769,573204.59ms798.67ms5581.1%8.4GiB
HTTP/2JSON (h2c)1,024713,23645.91ms209.59ms6100.1%1.9GiB
HTTP/2JSON (h2c)4,096581,550183.36ms1.12s5761.9%4.9GiB
HTTP/3Baseline64649,8526.16ms23.91ms6061.6%1.2GiB
HTTP/3Static6454,10075.11ms329.85ms4761.2%2.8GiB
gRPCUnary2562,491,23210.56ms10.56ms5624.0%1007.0MiB
gRPCUnary1,0242,338,52541.35ms41.35ms6207.7%2.5GiB
gRPCUnary TLS2562,058,16112.19ms12.19ms6079.8%818.2MiB
gRPCUnary TLS1,0241,826,31656.98ms56.98ms5281.5%2.8GiB
WebSocketEcho5121,835,273278us696us6128.2%220.4MiB
WebSocketEcho4,0961,806,9961.72ms5.25ms6120.1%389.2MiB
WebSocketEcho16,3841,686,0223.63ms10.10ms6033.9%456.1MiB
WebSocketEcho Pipelined51219,748,819414us2.08ms5700.1%225MiB
WebSocketEcho Pipelined4,09619,744,7581.92ms7.12ms5656.8%380MiB
WebSocketEcho Pipelined16,38419,407,9602.94ms9.60ms5864.6%380MiB

Compared with

The C# entries around aspnet-minimal on the HTTP/1.1 composite, and the one leading them. The last column shows every profile side by side.

EntryCompositevs aspnet-minimal
genhttp-ioxide7006+121%head to head
carter3454+9%head to head
aspnet-minimal-113205+1%head to head
fastendpoints3059-3%head to head
effinitive2868-9%head to head

Compare aspnet-minimal with any C# entry · Compare aspnet-minimal with any entry, in any language · Every C# entry, ranked

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