Model
Exponential backoff with full jitter
Jitter is not optional in backoff. It is the part that carries the load.
- Attempt
- the attempt number
- Base and cap
- the first backoff and the longest allowed
How it behaves
One input on the horizontal axis, the others held fixed.
Data table
| Attempt n | Upper end of the sleep |
|---|---|
| 0 | 100 ms |
| 0.15 | 111 ms |
| 0.3 | 123 ms |
| 0.45 | 137 ms |
| 0.6 | 152 ms |
| 0.75 | 168 ms |
| 0.9 | 187 ms |
| 1.05 | 207 ms |
| 1.2 | 230 ms |
| 1.35 | 255 ms |
| 1.5 | 283 ms |
| 1.65 | 314 ms |
| 1.8 | 348 ms |
| 1.95 | 386 ms |
| 2.1 | 429 ms |
| 2.25 | 476 ms |
| 2.4 | 528 ms |
| 2.55 | 586 ms |
| 2.7 | 650 ms |
| 2.85 | 721 ms |
| 3 | 800 ms |
| 3.15 | 888 ms |
| 3.3 | 985 ms |
| 3.45 | 1.09 s |
| 3.6 | 1.21 s |
| 3.75 | 1.35 s |
| 3.9 | 1.49 s |
| 4.05 | 1.66 s |
| 4.2 | 1.84 s |
| 4.35 | 2.04 s |
| 4.5 | 2.26 s |
| 4.65 | 2.51 s |
| 4.8 | 2.79 s |
| 4.95 | 3.09 s |
| 5.1 | 3.43 s |
| 5.25 | 3.81 s |
| 5.4 | 4.22 s |
| 5.55 | 4.69 s |
| 5.7 | 5.2 s |
| 5.85 | 5.77 s |
| 6 | 6.4 s |
| 6.15 | 7.1 s |
| 6.3 | 7.88 s |
| 6.45 | 8.74 s |
| 6.6 | 9.7 s |
| 6.75 | 10.8 s |
| 6.9 | 11.9 s |
| 7.05 | 13.3 s |
| 7.2 | 14.7 s |
| 7.35 | 16.3 s |
| 7.5 | 18.1 s |
| 7.65 | 20.1 s |
| 7.8 | 22.3 s |
| 7.95 | 24.7 s |
| 8.1 | 27.4 s |
| 8.25 | 30 s |
| 8.4 | 30 s |
| 8.55 | 30 s |
| 8.7 | 30 s |
| 8.85 | 30 s |
| 9 | 30 s |
| 9.15 | 30 s |
| 9.3 | 30 s |
| 9.45 | 30 s |
| 9.6 | 30 s |
| 9.75 | 30 s |
| 9.9 | 30 s |
| 10.1 | 30 s |
| 10.2 | 30 s |
| 10.3 | 30 s |
| 10.5 | 30 s |
| 10.7 | 30 s |
| 10.8 | 30 s |
| 10.9 | 30 s |
| 11.1 | 30 s |
| 11.3 | 30 s |
| 11.4 | 30 s |
| 11.6 | 30 s |
| 11.7 | 30 s |
| 11.8 | 30 s |
| 12 | 30 s |
Worked examples, recomputed
Every number the mechanisms quote for this relationship is recomputed from it, so none of them disagrees with it.
Where it appears
Each mechanism states it in its own names. The general symbol each name stands for is shown with it.
- Data Movement
How do records cross between two systems that have independent rates, independent availability and independent lifetimes, and what are you willing to lose when the assumption underneath the crossing breaks?
- Fault Tolerance & Delivery Semantics
What is the cheapest thing that can be safely done twice?