2026年1月5日Ilya · 高级 DevOps / SRE

为什么企业需要 SRE?将可靠性转化为金钱
在 IT 世界中,有一个神话:“好的系统管理员是那些系统总是运行且从不崩溃的人。”在 2026 年的现实中,追求 100% 的正常运行时间 (uptime) 可能比服务器崩溃更快地使公司破产。这就是 网站可靠性工程 (Site Reliability Engineering, SRE) 登场的舞台 —— 一门将可靠性转化为经济指标的学科。
Google 的可靠性悖论
诞生于 Google 的 SRE 概念指出:对于大多数服务而言,100% 的可靠性并不是正确的目标。地铁里的智能手机用户不会注意到 99.99% 和 99.999% 可用性之间的区别,因为他们的移动连接中断得更频繁。但是,对于企业来说,那“额外的一个九”的成本呈指数级增长。

图 1. 速度与可靠性的平衡
关键指标:用金钱的语言说话
SRE 使用三个概念来连接技术部门和业务部门:
- SLI (Service Level Indicator): 我们测量什么?(例如,API 响应时间 < 100ms)。
- SLO (Service Level Objective): 我们设定的目标是什么?(99.9% 的请求必须成功)。
- SLA (Service Level Agreement): 如果我们失败了会发生什么?(通常是客户合同中的罚款)。
错误预算 (Error Budget)
这是 SRE 最具革命性的工具。如果你的月度 SLO = 99.9%,那么你拥有 0.1% 的停机时间限额(约 43 分钟)。这就是你的“预算”。
SRE 规则: 只要你还有错误预算,你就可以冒险。发布不成熟的功能,进行实验,重构核心。但是一旦预算耗尽 —— 所有新发布都会被冻结("Code Freeze")。
NineLab 如何实施 SRE?
我们不仅仅是设置监控 (Grafana/Prometheus)。我们正在改变文化:
- 共同责任: 代码“搞挂”生产环境的开发人员亲自参与事故复盘。
- 无责事后分析 (Blameless Post-Mortems): 我们不寻找罪魁祸首。我们寻找测试遗漏错误的系统原因。
- 自动化: SRE 花在例行公事 ("toil") 上的时间不应超过 50%。其余时间用于编写消除例行公事的代码。
结论: SRE 是你创新能力的保险单。它允许你在安全的地方快速移动,而在风险过高的地方刹车。
主题常见问题
先试点:一个非关键服务、基线策略、可观测性与清晰发布流程,否则复杂度会拖垮交付。
不够:金丝雀、数据库迁移、回滚与有状态组件的窗口仍不可少。
放在带轮换与审计的密钥库,最小权限——不要进仓库或到处明文环境变量。
按服务的 SLO、队列滞后、复制延迟、发布失败与集群余量——与用户路径挂钩。
相关文章
DevOps / SRE2025年12月10日
CI/CD:如何不再害怕周五发布
面向业务结果的 CI/CD:手动发布为何比宕机更贵、流水线如何降低发布风险,以及从代码仓库到生产环境应优先自动化的环节。
阅读文章