Measured routing overhead
<1.1ms p95 at 10k RPS
Five isolated fixed-arrival trials measured Lasso against the same direct synthetic upstream. Every tuned trial completed without an error or locally rejected request.
Trial results
| Fresh container | Direct p95 | Routed p95 | Added p95 |
|---|---|---|---|
| 1 | 5.69ms | 6.64ms | 0.95ms |
| 2 | 5.74ms | 6.44ms | 0.70ms |
| 3 | 5.61ms | 6.69ms | 1.08ms |
| 4 | 5.73ms | 6.53ms | 0.81ms |
| 5 | 5.73ms | 6.70ms | 0.97ms |
Each trial scheduled 150,000 requests over 15 seconds after a 5-second warmup. Corrected latency starts at the intended arrival time, so generator scheduling delay remains visible. “Added p95” is routed p95 minus the paired direct-upstream p95.
Resource and workload envelope
- Linux/arm64 Docker host; Lasso used four BEAM schedulers pinned to four CPUs.
- Four isolated Node load workers shared two CPUs; two synthetic upstreams shared two CPUs.
- 10,000 fixed arrivals/second, 256 client sockets, and a 2,048-request local in-flight ceiling.
eth_getBalanceover HTTP through thefasteststrategy, with one 1ms local synthetic upstream selected.- The bounded response-validation heap profile was enabled. Instrumentation and dashboard clients were disabled for the five claim trials.
Sustained check
A separate 60-second instrumented trial completed 600,000/600,000 routed requests with zero errors or local rejection. Direct p95 was 5.74ms; routed p95 was 8.03ms, or 2.29ms added. Peak BEAM memory was 349MB and peak container RSS was 427MB.
What this does—and does not—show
This is a routing-engine overhead benchmark, not a hosted-capacity promise. It does not include public-provider latency, Internet ingress, authentication, database metering, multiple regions, WebSocket subscriptions, or dashboard fanout.
- Subtracting two p95 values is a paired distribution comparison, not a per-request overhead distribution.
- The workload uses one method and a controlled upstream. Other methods, payload sizes, retries, providers, and deployment shapes can differ.
- Untuned and same-container exploration produced tail outliers. Those rejected results remain in the raw ledger and motivated the enabled heap profile.
Revisions and raw evidence
Harness revision: 4d69538e0e4d0d8e68ea0b718ee4bef27c868836. The benchmark branch's runtime tree was based on Cloud d4a07aea9a6396fe129c540660ad454bdd1d087a; later dead-code deletion did not alter the executed call graph.
Download the 4.1MB raw evidence ledger (accepted, rejected, untuned, tuned, and sustained runs). SHA-256: 7679789e23fc0ea494bc9748cf8a8e4b4ff9e539238efbba6734c7bdb3f12463.