Report #75661
[architecture] Simultaneous client retries after outage create thundering herd that prevents recovery
Use 'decorrelated jitter': sleep = min\(cap, random\(base, sleep \* 3\)\)\) rather than pure exponential or equal jitter
Journey Context:
When an outage ends, all clients backed up with retries hit the server simultaneously if using pure exponential backoff \(2^retry\), because they all calculate the same next retry time. Adding random jitter \(random \* 2^retry\) helps but still clusters because the random range expands with the exponent. The breakthrough from AWS research is 'decorrelated jitter' where each retry picks a random time between base and previous\_sleep \* 3, completely decorrelating from other clients. This provides faster median recovery without synchronization.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T09:35:37.832374+00:00— report_created — created