闭卷说清“SLI、SLO与错误预算”的对象、规则、制品和一个失败反例。
软件工程 · 小纸条
选一章打印。双面打印(按长边翻页)后沿虚线剪开,每张卡片正面题目、背面答案。
闭卷说清“日志、指标与追踪的分工”的对象、规则、制品和一个失败反例。
闭卷说清“告警设计与值班可行动性”的对象、规则、制品和一个失败反例。
闭卷说清“超时、重试、退避与熔断”的对象、规则、制品和一个失败反例。
闭卷说清“容量、排队与尾延迟”的对象、规则、制品和一个失败反例。
闭卷说清“故障注入与恢复演练”的对象、规则、制品和一个失败反例。
闭卷说清“事故响应与无责复盘”的对象、规则、制品和一个失败反例。
核心:日志记录离散事件,指标聚合趋势,追踪连接一次请求的跨服务路径;规则:观测字段要稳定、可关联且保护隐私;禁止只打印自由文本和秘密;应能围绕“先由错误率告警发现异常,再按trace_id定位慢调用,最后读结构化错误事件”交付可复核制品。
核心:SLI是用户可感知测量,SLO是目标,错误预算允许在可靠性与变化间做选择;规则:分母、窗口、排除规则和数据来源必须明确;SLO不等于永不失败;应能围绕“结算成功率月SLO为99.95%,超预算后暂停高风险发布并优先修复”交付可复核制品。
核心:分布式调用必须限制等待;重试会放大负载,只有幂等且瞬态失败才安全;规则:重试预算属于端到端请求;各层独立重试会形成乘法风暴;应能围绕“客户端设置总截止时间,指数退避加抖动,熔断后快速失败并保护下游”交付可复核制品。
核心:告警只有在需要及时人工行动且有明确处置时才有价值;规则:每条告警有所有者、严重度、动作和关闭条件;无行动告警应删除或降级;应能围绕“按燃烧率告警SLO,附影响、仪表盘、最近变更和runbook,而非CPU瞬时抖动就叫醒人”交付可复核制品。
核心:可靠性来自被验证的降级与恢复,不来自文档中的愿望;规则:演练先限制爆炸半径,声明停止条件,并把发现转成有所有者的改进项;应能围绕“在预生产切断缓存、延迟支付、杀死实例,检查超时、幂等、告警和数据恢复”交付可复核制品。
核心:利用率接近饱和时排队非线性增长,平均延迟会掩盖少数严重体验;规则:容量计划使用峰值、目标利用率、故障冗余和增长缓冲,不以理论上限直接上线;应能围绕“服务每实例每秒80请求,峰值600请求需结合目标利用率和冗余计算实例数并观测p99”交付可复核制品。
核心:事故中先稳定服务和沟通,事后重建时间线与系统条件,不找替罪羊;规则:行动项应具体、可验证、有期限,并优先改变系统而非要求‘更小心’;应能围绕“记录检测、决策、缓解、恢复节点,分析为何防线未阻止而不是谁最后提交”交付可复核制品。