Skip to content

Load test report

  • Config: backend on one host with 4 uvicorn workers + local Postgres 16 · 48 client workers · 60 simulated devices · 12s. (scripts/loadtest.py)
  • Requests: 3182 (3182 accepted, 0 errors)
  • Throughput: 263 telemetry/s sustained
  • Fleet supported at the 15s telemetry interval: ~3,942 buildings
  • Latency: p50 152 ms · p95 360 ms · p99 682 ms
  • Error rate: 0.00%

PASS — sustains the “thousands of buildings” target on a single 4-worker host.

For reference, a single worker tops out around ~110 telemetry/s with p95 ~570 ms (SLO fail) — i.e. throughput + p95 improve with worker/replica count, as expected for the stateless API. Production scales horizontally behind a load balancer with managed Postgres; partitioning + downsampling (below) keep the telemetry table fast at scale. See docs/scaling.md._