Ridgeline · Diagram Design

Checkout is slow in two different ways

Five services, one week of request latency, one amplitude scale. Each ridge is the share of that service's own requests in each 40 ms bin — so the ridges compare shape, not traffic. Four of them have a single hump and a thinning tail; checkout-api has a second, smaller peak past 300 ms, which is a different failure from simply being slow.

Checkout is slow in two different ways Ridgeline chart of request-latency distributions for five services over one week; each ridge is the share of that service's requests falling in 40-millisecond bins, drawn on one shared amplitude scale, and checkout-api carries a second peak past 300 milliseconds that none of the other four show. SHARE OF REQUESTS · 1% = 2.4PX ON EVERY RIDGE static-cdn 40–280 ms auth-api 40–320 ms search-api 40–400 ms checkout-api 40–440 ms report-export 80–440 ms 0 120 240 360 480 REQUEST LATENCY (MS), BIN LOWER EDGE LEGEND SHARE OF EACH SERVICE'S OWN REQUESTS PER 40 MS BIN · 1% = 2.4PX ON EVERY RIDGE · UNSMOOTHED · ILLUSTRATIVE FIGURES checkout-api · focal, second peak past 300 ms Other services · strongest tone is the fastest median

FOCAL · CHECKOUT-API

A second peak is not a long tail

About a third of checkout's requests land past 280 ms, and they arrive as a distinct bump peaking near 360 ms rather than as a thinning tail. A tail says "sometimes slower"; a second peak says there are two paths through the code and one of them is always slow. Its p50 is 160 ms and its p99 is 400 ms — both true, and neither says the requests between them arrive in two clusters instead of one spread.

Height is share, so the ridges compare shape

static-cdn is the tallest ridge because its requests are concentrated in three bins, not because it serves the most traffic. Each ridge is normalised to its own service's request count and then drawn on one shared amplitude — that is what makes the silhouettes comparable, and it is the one thing a ridgeline must never fudge.

Overlap is deliberate; occlusion would not be

Ridges sit 56 px apart and the tallest rises 86 px, so peaks cross the row above and the stack reads as depth. The rule is that no peak may reach the row two above it — past that a peak hides behind a peak, and the fix is more pitch, never a smaller amplitude on one ridge.