Epoch Prober — single-pod scaling

pikachu · dry-run · sold-out hot-loop (KTMB Reserve probe-by-reserving) · one prober pod, one goroutine per slot

rateLimited 0 at every level probe latency ≈ 450 ms / Reserve slotsPerJob 500 · fanout 1 · paceMs 0 max QPS/pod so far

① QPS per slot

Reserve calls/sec on each slot. Flat = uncontended (latency-bound ~2.2/s).

② QPS per pod (fleet total)

Total Reserve calls/sec from one pod. Plateau ⇒ true saturation.

Data

Each row = a demand level held for ≥3 epochs; numbers from the completed prober Job tally.

SlotsQPS / podQPS / slotrateLimitederrors

Reading it: per-slot rate holds ~2.2/s (latency-bound) and QPS/pod scales linearly up to ~95 slots at zero rate-limiting — KTMB never pushed back. The wall isn't a QPS plateau: past ~95–175 slots the tiny 250m CPU / 128Mi pod can't finish startup (hundreds of goroutines starve the pod → the MAIN-Redis dial times out → the Job exits before probing). So the single-pod ceiling at current resources is ~100 slots. Levers: bigger pods, a lower slotsPerJob to shard across more pods, and the pprof-driven startup optimisation.