botocore/botocore/retryhandler.py
boto3の指数バックオフ + jitterは以下の式
base * growth_factor ^ (attempts - 1)
- baseはrand()なので、0-1の間。リトライ実行ごとにシャッフルされる
- DynamoDBだけbaseが0.05固定
botocore/botocore/data/_retry.json
より - growth_factorは初期値2
リトライ初回はattempts=1よりbaseとなり、一瞬待つことになる。
rand()が0に近いとほぼ待たずにリトライすることがある。