Thundering Herd - CI/CD用語集の定義
thundering herdとは、同期した競合のバーストです。多数のクライアントが一度に起床して同じリソースに同時に押し寄せ、定常状態の需要が控えめでも負荷が急増します。
thundering herd問題とは、多数のプロセスやリクエストが同じ瞬間に一斉に解放または起床してリソースを奪い合い、システムを圧倒しかねない負荷スパイクを生じさせる状態のことです。
CIでは、スケジュールされたworkflowやmainへのmergeが多数の同一jobを同時にトリガーしたときに現れます。
CIでの現れ方
cronによるfan-outや大量のretryは、共有のcache、registry、artifact storeにherdを生じさせることがあります。jitterと同時実行数の制限が負荷を時間的に分散させます。
関連ガイド
Cache Stampede - CI/CD Glossary DefinitionCache Stampede: A cache stampede happens when a cached entry expires or is invalidated and many concurrent co…
Backoff with Jitter - CI/CD Glossary DefinitionBackoff with Jitter: Backoff with jitter spaces out retries by increasing the delay after each attempt (backo…
Runner Queue Depth - CI/CD Glossary DefinitionRunner Queue Depth: Runner queue depth is the number of jobs waiting for a free runner at a given moment; a p…