Exponential Backoff with Jitter¶
When retrying failed operations, exponentially increasing wait times prevents overwhelming a recovering system, while adding randomness (jitter) prevents synchronized retry storms when many clients fail simultaneously.
Tension Addressed¶
Latency vs. Correctness (balances quick recovery attempts against overwhelming failing systems)
Recognizable As¶
Retry delays that double each attempt; random components in wait times; capped maximum backoff; retry budgets; "collision" handling in network protocols (Ethernet CSMA/CD)
Canonical Sources¶
Metcalfe & Boggs, "Ethernet" (1976) - original exponential backoff; AWS Architecture Blog, "Exponential Backoff and Jitter" (2015)
Transfers To¶
Network Protocols (collision handling), API Clients (rate limit recovery), Database Connections (reconnection), Distributed Locks (contention handling)
The pattern comes from early Ethernet: when two nodes transmit simultaneously, they back off for random exponentially-increasing periods. Without jitter, synchronized failures cause synchronized retries, creating periodic spikes instead of gradual recovery.