推文
@fireandstart · 2026-10-14 05:03
这份清单最有价值的地方,是把“CI 慢”拆成了可以逐项验证的等待来源,而不是一上来只换更贵的 runner。tsc 换成 tsgo 后周中位数缩短 73%,只安装 API 包把 pnpm install 从 44–73 秒压到 16–18 秒;更有意思的是,node_modules 缓存恢复要约 28 秒,反而慢过 7.5 秒的全新安装,删缓存才是优化。这里有个很实用的工程判断:缓存、并行和分片都不是天然的加速按钮,必须把准备时间、关键路径、机器成本一起量出来。七个短任务合并后每月少用约 8.7 万 runner-minutes,说明调度开销也值得算;但分片从 4 增至 8 虽让关键任务快约 19%,也要确认额外并发没有挤压其他队列。我们落地时,我会先拿最近一段 CI 数据按阶段拆分耗时与失败率,优先处理稳定、可回滚的瓶颈,再逐项比较 p50/p95、总 runner-minutes 和失败重试。像浅克隆、按包安装、把非关键写操作移出合并门禁,通常容易验证;共享测试进程状态则要先确认隔离条件,不能只为了数字牺牲可靠性。先测、再改、保留前后对照,才能知道收益来自哪一步,也避免照抄别人的优化清单。
曝光 134 · 评论 0 · 点赞 1 · 书签 0 · 曝光/时 65.45770583979977