SLI、SLO 与错误预算
SLI 是可测量的服务质量指标,SLO 是其目标值,SLA 是对外承诺;错误预算等于 1 减 SLO,用量化余额平衡发布速度与稳定性。
| SLI 示例 | 可用性=成功请求/总请求;延迟=快请求占比 |
|---|
| SLO 示例 | 30 天滚动窗口可用性 ≥ 99.9% |
|---|
| 错误预算 | 0.1% 约合 30 天 43 分钟不可用额度 |
|---|
| 策略 | 预算充足时可加速迭代,耗尽时收紧变更并复盘 |
|---|
- 定义 SLI:按用户可感知口径选成功率与延迟占比
- 设定 SLO:按业务等级分层,滚动窗口统计
- 换算预算:1 减去 SLO 得到窗口内允许的不可用量
- 联动变更:预算充足放行迭代,耗尽冻结高风险发布并复盘
- 回补改进:定位消耗来源,修复后恢复发布节奏
- 预算口径:只统计用户可感知故障,排除计划内维护与明确豁免项
窗口换算参考(30 天)
| SLO | 允许不可用 |
|---|
| 99.0% | 约 7.2 小时 |
| 99.9% | 约 43 分钟 |
| 99.95% | 约 21.6 分钟 |
| 99.99% | 约 4.3 分钟 |
易错点
- SLO 不按用户可感知口径设定,达成但用户仍不满
- 所有服务统一高标准目标,不区分业务等级与成本
数据来源与参考
- Google SRE Workbook:Implementing SLOs
- Google SRE Book:Embracing Risk