跳转至

[5] 持续交付(Continuous Delivery):把发布做成可回滚的流水线

  • 资料类型:工程交付方法论(书)
  • 原始来源:https://martinfowler.com/books/continuousDelivery.html
  • 对应章节:第 7 章(工程化)、第 17 章(部署与运维)

一句话

上线不是按一下按钮,而是能重复、能验证、能回滚的一条流水线。

你该从这本书带走什么

  • 发布要可预测:每次变更都能在相同流程里被验证,避免人肉上线剧本。
  • 反馈越早越便宜:把检查往左移(提交前/PR 阶段),减少集成成本。
  • 回滚是交付的一部分:没有回滚路径的发布,本质上是在赌。

在本书里怎么用

  • 把交付物与验收写成可执行门禁(哪怕只是 make ... 协议化占位)。
  • 把改动很多拆成可审查小步:每一步都有验证命令与失败判定。
  • 把上线后再看改成上线前先跑回归:质量/延迟/成本三条线并行看。

常见误用

  • 只把 CI 当成跑单测的地方,却没有契约/安全/基准等关键门禁。
  • 只有发布脚本,没有回滚脚本和回滚后怎么确认已回滚。