# 1. 缓存与数据库同时故障的系统韧性设计 A 应优先使用本地缓存与静态兜底数据,并对非核心请求快速失败,避免资源耗尽 ✓ 正确答案 B 应继续阻塞等待数据库返回,以保证数据绝对最新 C 所有场景都应拒绝服务,不允许任何降级 D 一旦 Redis 故障就必须直接中断整个系统
# 2. 网络延迟/丢包注入对微服务调用的影响验证 A 网络延迟只会影响延迟,不会影响吞吐量 B 慢调用比断连更隐蔽,可能悄悄耗尽线程池与连接池,但可通过超时、重试与隔离来缓解 ✓ 正确答案 C 注入网络故障后系统必然崩溃,无需观察 D 网络故障注入不需要任何工具支持
# 3. 跨区域容灾的流量切换与数据一致性 A 异步复制可保证 RPO 为 0 B 多活架构无需任何复制机制 C 流量切换不需要确认数据是否追上 D 同步复制会带来性能开销,但 RPO 趋近为 0;异步复制延迟低但灾难时可能丢失数据 ✓ 正确答案
# 4. 重试(Retry)的指数退避与抖动(jitter) A 抖动是无意义的随机性,应去除 B 重试次数越多越好,无需限制 C 指数退避避免重试过密,抖动避免重试同步造成惊群;重试需配合上限与幂等使用 ✓ 正确答案 D 固定间隔重试是最优策略
# 5. 限流熔断在秒杀/大促的实战配置 A 限流和熔断只要设置一个即可 B 熔断阈值应设得越高越好,避免误触发 C 秒杀场景应放开所有限流以保证更多用户下单 D 通过网关限流、业务层并发限流、熔断与异步削峰协同,优先保护核心链路 ✓ 正确答案
# 6. 限流(RateLimiter)在客户端侧的防护作用 A 客户端限流用于自我保护并控制对下游的请求速率,避免故障时重试风暴压垮双方 ✓ 正确答案 B 客户端限流与服务端限流作用完全相同 C 客户端限流会降低可用性,应禁用 D 只有网关需要限流,客户端不需要
# 7. 隔板/熔断/重试组合使用的常见陷阱 A 重试应无视熔断状态继续执行 B 三者可任意混用,无顺序要求 C 常见陷阱包括重试穿透熔断、原语排序错误、舱壁线程池过小导致瓶颈 ✓ 正确答案 D 超时与熔断阈值无关
# 8. MTTR/MTBF 在韧性评估中的意义 A MTTR 反映稳定性,MTBF 反映恢复速度 B MTBF 比 MTTR 更易短期优化 C 可用性近似等于 MTBF/(MTBF+MTTR),韧性评估更关注反映恢复能力的 MTTR ✓ 正确答案 D 两者与可用性无关
# 9. Resilience4j 的 TimeLimiter 与超时控制 A 它用于限制并发调用数量 B 它只能用于同步调用 C 它负责熔断状态切换 D 它通过异步执行限制调用最长耗时,超时抛 TimeoutException,需配置 timeoutDuration 与是否取消任务 ✓ 正确答案
# 10. 依赖服务不可用时的降级与兜底数据 A 降级就是直接抛异常让用户感知 B 兜底数据只能在故障时临时生成 C 降级无需限流配合 D 通过返回默认值/缓存/静态兜底数据实现确定性降级,并配合告警与自动恢复 ✓ 正确答案
# 11. 可用性目标(99.9/99.95/99.99)的故障容忍度 A 99.9% 允许一年约 8.76 小时故障 ✓ 正确答案 B 99.99% 允许一年约 52 小时故障 C 可用性目标越高,实现成本越低 D 99.9% 与 99.99% 的容忍度相同
# 12. 基于混沌实验验证熔断与重试是否真的生效 A 配置了熔断就必然生效,无需验证 B 混沌实验只能验证重试,不能验证熔断 C 验证只需看日志,无需注入故障 D 通过注入真实故障、观测熔断状态机与重试行为,才能验证韧性机制真正生效 ✓ 正确答案
# 13. 基于错误预算的发布门禁(burn rate) A burn rate 与错误预算无关 B burn rate 越大说明预算消耗越快,越应触发发布门禁 ✓ 正确答案 C 发布门禁只与代码评审有关 D burn rate 越小越说明系统异常
# 14. 强弱依赖梳理与关键链路保护 A 强依赖不可用时主流程失败,弱依赖可降级异步化,应把保护资源集中在关键链路的强依赖上 ✓ 正确答案 B 弱依赖不可用时主流程必然失败 C 所有依赖都必须同等保护 D 强弱依赖无需梳理
# 15. 慢调用(慢 SQL/慢接口)的超时与隔离 A 慢调用不影响系统整体 B 慢调用只影响数据库,不影响应用 C 对慢调用应不加超时地等待其完成 D 慢调用会长期占用线程与连接池,可通过超时控制单次时长并用并发隔离限制占用,再配合慢 SQL 治理 ✓ 正确答案
# 16. 故障注入后自动恢复(自愈)能力设计 A 自愈只需检测到故障即可,无需执行与复核 B 自愈应完全取代人工,无需任何人工干预 C 自愈与健康检查无关 D 自愈由检测、决策、执行、复核闭环组成,且自动操作需有熔断与回退安全网 ✓ 正确答案
# 17. 舱壁模式(Bulkhead)隔离资源避免故障扩散 A 舱壁通过资源分池切断故障扩散路径,线程池舱壁隔离彻底但开销大,信号量舱壁开销小但隔离线程有限 ✓ 正确答案 B 舱壁模式会消除所有故障 C 线程池舱壁与信号量舱壁隔离效果完全相同 D 舱壁与资源隔离无关
# 18. 超时传递(Deadline)在调用链上的重要性 A 每跳独立超时之和等于整体超时,无需传递 B 不传递 Deadline 会导致各跳超时叠加、总时长失控,传递 Deadline 让总超时由最外层统一控制 ✓ 正确答案 C Deadline 传递会拖慢系统 D 超时传递只对同步调用有意义
# 19. 错误预算快速消耗后的止血措施(冻结发布/扩容/降级)如何触发与解除? A 止血措施无需回退与审计 B 只要错误率下降,立即解除所有止血措施 C 止血措施由 burn rate 超阈值触发,解除需在指标稳定一段时间后逐级进行,避免误解除 ✓ 正确答案 D 冻结发布是唯一止血手段
# 20. 降级(Fallback)策略与返回值设计 A 降级返回默认值/缓存/空结果,需保证语义正确、可区分真实与降级结果并打点监控 ✓ 正确答案 B 降级结果无需与真实结果区分 C 降级就是简单抛异常 D 降级返回值可以是不完整且错误的
# 21. Chaos Mesh 的 Pod/Network/IO 故障注入类型 A PodChaos 模拟网络延迟 B Chaos Mesh 只能注入 CPU 压力 C Chaos Mesh 不支持 Time 故障 D NetworkChaos 注入网络延迟/丢包等,IOChaos 注入磁盘读写异常,PodChaos 模拟实例级故障如重启 ✓ 正确答案
# 22. SLO 驱动的混沌实验设计 A 用 SLO 为标尺,通过故障梯度找到系统跌破 SLO 的临界点,量化韧性冗余 ✓ 正确答案 B SLO 与混沌实验无关 C 实验故障程度越强越好,无需梯度 D 混沌实验只需验证系统没崩溃,无需关注 SLO
# 23. SLO/SLI/Error Budget 的定义与计算 A SLO 就是实际测得的指标 B Error Budget 与 SLO 无关 C SLI 是目标值,SLO 是实测值 D SLI 是可量化指标,SLO 是目标值,Error Budget = 1 - SLO,表示允许的失败量 ✓ 正确答案
# 24. 重试的前提是幂等,哪些接口可安全重试,如何用幂等键保护 A 所有接口都可安全重试 B 只读接口天然幂等,非幂等写接口需用幂等键去重保护,才能安全重试 ✓ 正确答案 C 幂等键只用于查询 D 重试与幂等无关
# 25. Chaos Mesh、Litmus 与自研故障注入的选型对比 A 开源工具覆盖通用故障且集成成熟,自研适合定制业务级故障但成本高,应结合场景选型 ✓ 正确答案 B Chaos Mesh 与 Litmus 功能完全一致,无差异 C 自研永远优于开源工具 D 混沌工程不需要选型工具
# 26. 故障演练(GameDay)的组织与复盘 A 复盘只需复盘技术问题,不需复盘应急处置流程 B 演练应规划目标、可控执行、以时间线复盘响应过程并形成可跟踪的改进闭环 ✓ 正确答案 C 演练结论无需落地 D 演练只需执行,无需准备
# 27. 混沌实验与 CI/CD 结合的持续验证 A 混沌实验应在发布后一次性执行,不需持续 B 只需在发布前做一次混沌实验即可永久有效 C 混沌实验与 CI/CD 无法集成 D 通过将混沌实验接入预发布/金丝雀阶段,把实验结论作为发布门禁,实现韧性持续验证 ✓ 正确答案
# 28. 混沌实验的可观测依赖(指标/告警需先就绪) A 混沌实验无需可观测性支撑 B 可观测性只在实验后需要 C 混沌实验前需先就绪指标采集、告警与链路追踪,否则无法判断故障行为、实验失去意义 ✓ 正确答案 D 告警规则与混沌实验无关
# 29. 混沌实验的爆炸半径控制与停止条件 A 通过限制作用范围、灰度、时间窗口控制爆炸半径,并设置明确的停止条件与安全护栏 ✓ 正确答案 B 混沌实验应一次注入全量故障,测试极限 C 混沌实验无需停止条件 D 爆炸半径无需控制
# 30. 混沌工程的核心原则(先假设稳态再注入故障) A 混沌工程是随机破坏系统,无需稳态 B 稳态假设与混沌实验无关 C 先定义并确认稳态,再注入故障检验是否偏离稳态,让实验有明确判据 ✓ 正确答案 D 混沌工程唯一目的是制造故障
# 31. 用户体验与系统 SLI 的映射 A SLI 应聚焦内部技术指标,无需考虑用户体验 B 只度量系统内部指标即可 C 用户体验与 SLI 无法映射 D 从用户可感知的体验出发倒推系统 SLI,让技术指标对应具体的用户体验维度 ✓ 正确答案
# 32. 依赖故障的分类(瞬时/持续、慢/断)与应对策略矩阵 A 所有故障都应对持续重试 B 瞬时故障靠重试退避,持续故障靠熔断,慢调用靠隔离,断连靠快速失败,按故障类型匹配策略 ✓ 正确答案 C 故障分类与应对策略无关 D 持续断开也应无限重试