知识卡片
高频小发布比年度大发布更可靠
内容
早年软件按年发布,改动海量、靠人工测试,用户可见问题几乎必然存在,且每次改动集合完全不同, 上次发布的可靠性数据对预测下次毫无参考价值。当编译发布能压缩到几分钟一次时,用户”接触到问题 版本”的机会看似变多、MTBF 似乎下降,但整体质量反而更高——因为除最终版本外,所有中间版本也都 被测试覆盖,问题能被精确对应到具体是哪次改动引入,修复的是根因而非表面症状。参见[[高频发布 反而降低单次发布风险]]。
参考来源
- 位置:《SRE:Google运维解密》第17章《测试可靠性》(源文件:_epub-src/OEBPS/Text/0009_0008.xhtml)
- 结论依据:原文对比了年度发布与分钟级高频发布两种模式,指出高频发布虽然让用户接触问题版本的
次数增多、MTBF 数字看似下降,但因为每个中间版本都被测试覆盖,问题能被精确定位到具体改动,
整体发布质量比年度发布更高。
- 原始内容:“不久以前,软件项目还是每年发布一次……这些发布流程的平均失败时间(MTBF)是一年
……如果我们让用户在一年中测试更多的版本,平均失败周期(MTBF)反而会下降,因为用户有更多的
机会接触到有问题的版本。然而……用这种方式发布的版本会比年度发布的代码质量高。因为在年度测试
之外,所有中间版本也得到了测试。”