Runner Concurrency - CI/CD用語集の定義
runner concurrencyとは、ある瞬間にrunnerフリート全体で並列に実行できるjobの数です。利用可能なrunnerの数(およびGitHubホストのプランでは、同時に実行できるjob数に関するアカウントレベルのconcurrency制限)によって上限が決まります。
ボトルネック
50個のjobがディスパッチされても20個のrunnerしか空いていない場合、30個のjobがキューに入ります。runner concurrencyを引き上げるには、より多くのrunnerをプロビジョニングするか、より高いホストconcurrencyのティアが必要です。トレードはコストです。次のバーストを待つアイドルなrunnerは、ゼロにスケールしない限り依然としてお金がかかります。
ホストの制限
GitHubホストのconcurrencyはプランに紐づいています(例えばGitHub Freeでは20個の同時job、TeamやEnterpriseではさらに多く)。self-hostedおよびマネージドのrunnerでは、単により多くのマシンを実行することでconcurrencyを設定できます。
関連ガイド
Concurrency - CI/CD Glossary DefinitionConcurrency: **Concurrency** controls limit how many runs of a workflow execute at once, and can cancel super…
Job Concurrency Limit - CI/CD Glossary DefinitionJob Concurrency Limit: A job concurrency limit caps how many jobs may run at the same time within a scope, se…
Queue Depth - CI/CD Glossary DefinitionQueue Depth: Queue depth is the number of jobs waiting for a free runner at a given moment. It is the primary…