Backoff with Jitter - CI/CD用語集の定義
backoff with jitterはリトライ間の待機時間を増やしつつランダム化するので、失敗した大量のクライアントが同じ瞬間に一斉にリトライしてターゲットを再び過負荷にすることを防ぎます。
backoff with jitterは、各試行後の遅延を増やし(backoff)、ランダム性を加える(jitter)ことでリトライの間隔を空けます。これにより、多くのクライアントが足並みをそろえてリトライし、同期した負荷スパイクを生み出すことを防ぎます。
純粋な指数バックオフでもリトライは同期してしまいます。jitterはその同期を崩します。
jitterが重要な理由
jitterがないと、一緒に失敗したクライアントは同じだけバックオフして一緒にリトライし、thundering herd(雪崩現象)を再現してしまいます。ランダム性を加えるとリトライがウィンドウ全体に分散し、負荷が平準化されます。
関連ガイド
Retry Budget - CI/CD Glossary DefinitionRetry Budget: A retry budget caps how many automatic retries are allowed over a window, so retrying transient…
Thundering Herd - CI/CD Glossary DefinitionThundering Herd: The thundering herd problem is when a large number of processes or requests are all released…
Cache Stampede - CI/CD Glossary DefinitionCache Stampede: A cache stampede happens when a cached entry expires or is invalidated and many concurrent co…