When to retry

Transient errors: network, 5xx, timeout. Not idempotent-unsafe operations (POST money transfer).

Advertisement

Exponential backoff

Delay = base × 2^attempt. Prevents flooding recovering service. Cap at max delay.

Advertisement

Jitter

Delay = random(0, base × 2^attempt). Avoids all clients retrying at same time (thundering herd). Standard in AWS SDKs.