HttpArena
Frameworks

cardigan

Engine · Java · engine: io_uring

Java HTTP engine built on io_uring, Panama FFI, virtual threads, and thread-per-core event loops.

Achievements

🥇 3 Gold · 🥈 2 Silver. 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
🥇 GoldTest profileHTTP/2 · Baseline1 of 7
🥇 GoldTest profileHTTP/2 · Baseline (h2c)1 of 5
🥇 GoldTest profileWorkload · 8Gbit1 of 9
🥈 SilverFamily compositeComposite · HTTP/22 of 7
🥈 SilverTest profileHTTP/2 · Static2 of 7

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.14 of 265294
HTTP/22 of 72664
gRPC2 of 21978

Every result

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

CategoryProfileConnsReq/secAvgp99CPUMemory
ConnectionBaseline4,0963,947,3461.04ms1.56ms6157.2%1.2GiB
ConnectionPipelined4,09645,708,4281.43ms2.73ms6479.0%1.5GiB
ConnectionShort-lived4,0962,613,8321.43ms2.95ms5751.9%1.6GiB
EfficiencyLatency-10K1,0249,98086.1us110.0us30.2%854MiB
EfficiencyLatency-1M1,024998,08790.8us164.0us2236.3%900MiB
WorkloadJSON TLS4,0961,703,4612.36ms205.72ms6156.2%1.7GiB
Workload8Gbit51249,382115.1us622.0us289.3%1.0GiB
HTTP/2Baseline25614,467,5691.05ms51.62ms1473.8%1.2GiB
HTTP/2Baseline1,02414,137,9053.46ms81.28ms1613.7%2.1GiB
HTTP/2Static2561,178,2127.45ms33.72ms6073.4%1.5GiB
HTTP/2Static1,0241,042,07630.22ms781.38ms6132.8%2.8GiB
HTTP/2Baseline (h2c)25615,144,652854us12.78ms1344.8%1.2GiB
HTTP/2Baseline (h2c)1,02414,978,6363.27ms24.32ms1454.2%2.5GiB
HTTP/2Baseline (h2c)4,09613,644,45015.42ms115.38ms1241.8%5.9GiB
gRPCUnary2567,039,3432.16ms20.32ms1390.5%2.0GiB
gRPCUnary1,0246,900,6128.77ms127.89ms1605.4%3.4GiB
gRPCUnary TLS2566,951,5502.16ms23.64ms1535.9%2.0GiB
gRPCUnary TLS1,0246,575,2468.63ms99.81ms1756.7%3.9GiB

Compared with

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

EntryCompositevs cardigan
vertx5324+1%head to head
micronaut4443-16%head to head
quarkus-jvm3788-28%head to head

Compare cardigan with any Java entry · Compare cardigan with any entry, in any language · Every Java entry, ranked

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