SLO、错误预算与恢复目标
可用性指标、SLO与错误预算
前置:理解请求成功/失败、延迟阈值、比例和统计窗口;Python 3.10+ 用于请求预算计算。教学范围为请求型SLI/错误预算;SRE Workbook2018;Python 3.10+。核对日期2026-10-17。示例未执行,本轮没有安装依赖、生成协议代码、启动服务或浏览器预览。完整文件与输入见请求预算计算器与准入模型;推演结论只适用于写明的模型。
可用性分母如何选
可用性分母如何选先定义有效请求与好事件。例如教学规则把观测日志中eligible=true的请求作为分母,其中成功且耗时不超过300毫秒为好事件。没有流量时比例未定义,不能默认100%;缺日志也不是没有失败,要另查采样与观测完整性。
SLO与错误预算
SLO与错误预算连接业务目标和工程取舍。目标99.9%表示允许坏事件比例0.1%,一百万有效请求预算1000个坏事件。请求预算不能随意换算为每月固定停机分钟,除非明确按时间窗口而非请求计量,并处理流量不均等假设。
串联依赖与独立假设
串联依赖与独立假设必须一起写:若两个依赖都必须成功,且故障独立,联合概率可相乘。共用机房、身份系统或发布流程会使故障相关,简单乘法与双副本并联公式可能过分乐观;复制数量不是可用性的直接证明。
先定义有效事件再算预算
1000条日志中若100条不符合预先约定的有效请求口径,分母就是900;排除规则必须在看结果前确定,不能为了提高达标率删掉慢请求。图中成功与延迟共同决定好事件,失败且超时仍只算一个坏事件;零分母时比例未定义。
查看图表代码
来源与适用边界
- 英文官方、作者或规范原文:本专题机制依据;按上述固定版本族阅读。
- 中文官方或作者资料:用于术语和讲解交叉核对,冲突以原始规范为准。
恢复目标、延迟分位数与测量边界
RTO与RPO边界
RTO与RPO边界分别描述恢复时间目标与可接受的数据损失窗口。备份存在不证明能在RTO内恢复,复制也可能同步传播误删除。恢复设计要写出隔离副本、恢复步骤与数据核验;本课只给理论推演,没有演练证据。
分位数与平均值
分位数与平均值回答不同问题。平均延迟低可能隐藏少量尾延迟极高的请求,p99依赖观测窗口与样本量;各机器p99不能直接平均成全站p99。必须聚合原始分布或兼容直方图,并记录排除请求的规则。
可用性资料与模型
可用性资料与模型用Google SRE原书定义SLI、SLO和错误预算,微软中文官方断路器文档交叉比较故障保护。历史韧性示例保留库配置用途;本课不声称其阈值适合当前服务,也没有启动依赖或执行故障注入。
恢复时间与数据缺口分别验收
设故障发生于12:00,最近可用恢复点为11:55,服务在12:20恢复,则这次恢复耗时20分钟,数据回退窗口为5分钟。它们分别与RTO和RPO目标比较;恢复后还要检查关键业务数据,而非仅检查进程存活。下图是人为设定的推演,不是演练结果。
查看图表代码
来源与适用边界
- 英文官方、作者或规范原文:本专题机制依据;按上述固定版本族阅读。
- 中文官方或作者资料:用于术语和讲解交叉核对,冲突以原始规范为准。
- 相关既有参考:原URL与专业范围保留;历史案例不能自动代表当前实现。
继续阅读
- 错误预算计算
- 目标与故障隔离