benchmarky
Limit 10 GB mezipaměti je skutečným úzkým hrdlem CI
Instrumentovali jsme 40 000 běhů pracovních postupů. Chování mezipaměti předpovídalo čas nástěnných hodin lépe než počet vCPU a většina týmů překročila limit, aniž by si toho kdy všimla.
Tomás Rivera · Výkonové inženýrství · 2026-07-02 · 9 min čtení
V GitHub Actions je režim selhání, který nevytváří žádnou chybu, žádné varování a žádný řádek protokolu. Vaše úložiště překročí 10 GB mezipaměti, nejméně nedávno použité položky se začnou vyřazovat a od toho dne se část vašich běhů tiše spustí za studena.
Nikdo za to nedostane stránkování. Stavba stále prochází. Je to prostě pomalejší, navždy, a v době, kdy někdo zkoumá změnu, je šest měsíců stará.
Co jsme měřili
U 40 000 spuštění na úložištích, která se přihlásila, jsme zaznamenali míru návštěvnosti mezipaměti, dobu obnovení, velikost běhu a celkový čas nástěnných hodin. Vynikly dvě věci.
Druhé zjištění je akčnější: pod zhruba 80% četností zásahů do mezipaměti se přidávání vCPU jen stěží posunulo celkovým časem potrubí. Týmy kupovaly větší stroje, aby kompenzovaly studené mezipaměti, což je téměř nejdražší způsob, jak tento problém vyřešit.
Rychlost obnovení je důležitá stejně jako četnost zásahů
Mezipaměť, jejíž obnova trvá čtyři minuty a ušetří tři minuty práce, je čistá ztráta a bude hlásit 100% míru návštěvnosti, zatímco ztratíte váš čas. Viděli jsme několik úložišť přesně v tomto stavu.
co s tím dělat
- Změřte svou celkovou velikost mezipaměti na úložiště – většina týmů se nikdy nedívala
- Měřte dobu obnovy, nejen četnost zásahů
- Před nákupem větších běžců opravte klíče mezipaměti
- Pokud máte konstrukčně více než 10 GB, problém je v čepici a žádný klíč to nevyřeší
Váš další build může být dvakrát rychlejší za poloviční cenu
Začněte zdarma. Odchod je tentýž jeden řádek a i ten diff zveřejňujeme.