ring-jetty-adapter
Engine · Clojure
Minimal HTTP/1.1 and HTTPS engine benchmark using the official Ring Jetty adapter with native WebSocket echo.
Achievements
🥈 1 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.
| Medal | Award | Field | Rank |
|---|---|---|---|
| 🥈 Silver | Within its language | Clojure · HTTP/1.1 | 2 of 8 |
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.
| Family | Rank | Composite |
|---|---|---|
| HTTP/1.1 | 25 of 37 | 1614 |
| WebSocket | 15 of 18 | 414 |
Every result
Alpha Round, 19 runs. Requests per second is the best of three; latency, CPU and memory come from that run.
| Category | Profile | Conns | Req/sec | Avg | p99 | CPU | Memory |
|---|---|---|---|---|---|---|---|
| Connection | Baseline | 4,096 | 604,995 | 3.02ms | 7.90ms | 3644.5% | 7.0GiB |
| Connection | Pipelined | 4,096 | 1,439,917 | 24.33ms | 74.10ms | 4244.5% | 5.9GiB |
| Connection | Short-lived | 4,096 | 432,293 | 4.63ms | 11.00ms | 2958.3% | 14.2GiB |
| Concurrency | Async Delay | 32,000 | 4,083 | 1.55s | 5.00s | 139.7% | 1.3GiB |
| Efficiency | Latency-10K | 1,024 | 9,774 | 96.0us | 131.0us | 61.7% | 1.0GiB |
| Efficiency | Latency-1M | 1,024 | 632,472 | 3338562.7us | 7583744.0us | 3354.9% | 2.2GiB |
| Efficiency | Latency-500K/8 | 1,024 | 173,814 | 5518195.5us | 12857344.0us | 786.0% | 798MiB |
| Workload | JSON Comp | 4,096 | 39,059 | 55.16ms | 322.30ms | 4101.9% | 5.4GiB |
| Workload | JSON Comp | 16,384 | 37,563 | 124.69ms | 1.05s | 4073.7% | 15.4GiB |
| Workload | JSON TLS | 4,096 | 70,743 | 60.34ms | 186.67ms | 4312.1% | 5.6GiB |
| Workload | 8Gbit | 512 | 47,071 | 144.6us | 902.0us | 505.9% | 1014MiB |
| WebSocket | Echo | 512 | 715,069 | 639us | 1.27ms | 2483.7% | 4.9GiB |
| WebSocket | Echo | 4,096 | 791,159 | 2.15ms | 5.29ms | 3056.5% | 5.0GiB |
| WebSocket | Echo | 16,384 | 719,920 | 6.32ms | 17.90ms | 3119.4% | 5.2GiB |
| WebSocket | Echo Pipelined | 512 | 3,211,376 | 252us | 307us | 4221.4% | 13.9GiB |
| WebSocket | Echo Pipelined | 4,096 | 3,050,311 | 874us | 323us | 4185.7% | 5.9GiB |
| WebSocket | Echo Pipelined | 16,384 | 2,995,935 | 1.82ms | 331us | 4342.3% | 14.2GiB |
| WebSocket | Echo Short-lived | 512 | 438,352 | 863us | 1.81ms | 2384.8% | 1.9GiB |
| WebSocket | Echo Short-lived | 4,096 | 507,371 | 2.57ms | 6.89ms | 2825.9% | 2.7GiB |
Compared with
The Clojure entries around ring-jetty-adapter on the HTTP/1.1 composite, and the one leading them. The last column shows every profile side by side.
| Entry | Composite | vs ring-jetty-adapter | |
|---|---|---|---|
| ring-http-exchange | 3506 | +117% | head to head |
| reitit | 1738 | +8% | head to head |
| ring-jetty9-adapter | 1667 | +3% | head to head |
| aleph | 1402 | -13% | head to head |
| hirundo | 1268 | -21% | head to head |
Compare ring-jetty-adapter with any Clojure entry · Compare ring-jetty-adapter with any entry, in any language · Every Clojure entry, ranked
Results updated · How the benchmark is run · The machine · Add or fix an entry