微服务稳定性工程师面试宝典 - 第3节
一、知识结构表格:SLA / SLO / SLI 与故障等级
| 术语 | 全称 | 核心定义 | 常见指标 | 关系 |
|---|---|---|---|---|
| SLI | Service Level Indicator | 实际服务质量的量化指标 | 请求延迟、错误率、吞吐量 | 底层数据 |
| SLO | Service Level Objective | 对 SLI 的目标阈值承诺 | 99.9% 请求 <200ms | 内部改进目标 |
| SLA | Service Level Agreement | 对外与客户签订的正式协议 | 99.99% 可用性(含赔偿) | 基于 SLO 的承诺 |
| 故障等级 | — | 按影响范围 / 紧急程度分级 | P0(核心宕机)~ P4(轻微问题) | 决定响应时效 & 升级路径 |
二、回答框架图
三、高频面试问答卡片
Q1:请解释 SLA、SLO、SLI 的区别与联系。
考察点:
- 是否理解指标-目标-承诺分层逻辑
- 能否举例说明实际应用
- 是否知道 SLA 通常附带赔偿条款
回答框架:
- 先一句话定性:三个词构成“数据→目标→协议”的金字塔。
- 逐一解释:SLI 是原始指标(如延迟 P99),SLO 是内部可接受阈值(P99 ≤ 200ms),SLA 是给客户的书面承诺且含惩罚。
- 强调 SLA 基于 SLO 设定,通常比 SLO 更宽松(留缓冲)。
- 举例:支付系统 SLI=成功率,SLO=99.95%,SLA=99.9%。
示例回答:(90字)
SLI是服务实际测量指标,如请求延迟P99;SLO是基于SLI设定的内部目标(50ms);SLA是对外契约,通常比SLO宽松并含补偿。比如缓存系统SLI=命中率,SLO≥99%,SLA=98.5%,超出需赔偿。
可能追问:“如果SLI长期达标但SLA违约,可能是什么原因?” “SLA中常见的可用性计算公式是什么?”
避坑提醒:切勿混淆三者的范围!SLA是法律条款,SLO是技术承诺;回答时务必带上“赔偿”关键词,体现工程伦理认知。
Q2:你们公司如何划分故障等级?你如何向面试官介绍 P0~P4 的分级标准?
考察点:
- 是否有实际故障管理经验
- 分级是否合理(关注影响面而非技术复杂度)
- 是否了解每个等级的响应时效
回答框架:
- 先明确故障等级依据:用户感知 + 业务金流 + 数据一致性。
- 给出典型定义:P0=核心服务不可用 & 影响大量用户;P1=部分功能失灵但可降级;P2=非核心功能受影响;P3/P4=轻微异常或监控告警。
- 对应响应时间:P0 5min 内上线,P1 15min,P2 30min,P3/P4 可下个迭代修复。
- 举一个你在实际项目中参与分级的案例。
示例回答:(85字)
我们以用户影响广度+资损定义P0(全链路宕机5min响应),P1为单模块降级(15min),P2为小功能失效(30min)。例如订单系统库存接口超时算P1,因为下单流程受阻但可降级为排队。
可能追问:“P0和P1边界模糊时如何处理?” “故障等级和On-call人员如何对应?”
避坑提醒:避免按“代码bug多少”或“恢复难度”定级;一定要以“用户/资金影响”为第一标准。面试官期待看到你的“产品意识”。
Q3:在微服务架构中,你会如何设计冗余来保障高可用?有哪些具体策略?
考察点:
- 是否有实际的多活/多AZ部署经验
- 是否考虑成本与复杂度的权衡
- 是否知道蓝色/绿色发布、熔断与限流配合冗余
回答框架:
- 先点明冗余的本质:消除单点 + 快速切换。
- 列举三种常见维度:部署冗余(多AZ/多Region)、服务冗余(主备/集群)、数据冗余(主从/分布式存储)。
- 强调流量调度策略:DNS、负载均衡、一致性Hash + 健康检查。
- 提到成本控制:冷备 vs 温备 vs 热备的选择。
示例回答:(95字)
我会优先做多AZ部署:核心服务在az1/az2各一套,通过DNS流量切换;数据层用Redis Cluster跨AZ主从同步。同时配合Hystrix熔断避免雪崩,红色/绿色发布验证冗余有效性。冷备适合非关键服务,热备用于支付等强一致场景。
可能追问:“如何保证跨AZ数据最终一致性?” “冗余和分布式事务如何平衡?”
避坑提醒:不要只堆概念“多副本”“主备”,要说出落地细节——如健康检查频率、切换时间、数据丢失容忍度。面试官想看你的工程判断力。
四、自查复习清单
- ✅ 能脱口而出SLI → SLO → SLA递进关系,并写出一条SLA条款(含赔偿比例)。
- ✅ 能画出常见故障等级树(P0~P4),并对应响应时效与升级路径。
- ✅ 能说出至少3种冗余设计模式及其适用场景(冷备、温备、热备,多AZ,多集群)。
- ✅ 能解释“冗余不是万能的”——一致性、成本、复杂性如何权衡。