分布式系统长尾延迟(Tail at Scale)

共 20 题
#

1. 超时预算(timeout budget)如何在多层调用链上分配,为什么每层独立超时会让端到端延迟失控,deadline propagation 如何解决?

A 独立超时保证端到端可控
B 每层独立超时会让端到端延迟叠加失控,deadline propagation 分配剩余预算使其有界 ✓ 正确答案
C deadline propagation 与超时无关
D 各层超时相加不会失控
#

2. 过载瞬间客户端并发重试为何引发重试风暴并放大服务端排队与尾延迟,指数退避加随机抖动如何避免同步重试潮?

A 随机抖动使重试同步
B 并发重试不影响服务端
C 指数退避加速重试
D 并发重试形成风暴放大排队,指数退避+随机抖动让重试错开避免同步潮 ✓ 正确答案
#

3. 服务端利用率升高时 P99 为何非线性恶化,排队论视角下平均延迟低为何不代表尾延迟可控?

A 利用率接近 1 时排队延迟按 ρ/(1-ρ) 非线性爆炸,平均低不代表尾可控 ✓ 正确答案
B 利用率升高 P99 线性上升
C 平均延迟可代表尾延迟
D 排队延迟与利用率无关
#

4. Dean & Barroso 的 "The Tail at Scale" 论文中 hedged requests、tied requests、backup requests、speculative replication 等关键延迟削减技术?

A 这些技术都只处理单副本
B hedged/tied/backup/speculative 都用冗余请求对冲慢节点,取最快返回降低尾延迟 ✓ 正确答案
C hedged 在主请求成功时不发备份
D 冗余请求无法降低尾延迟
#

5. Tail At Scale 的根本原因,fan-out 系统中 P50=10ms、P99.9=1000ms 的 squared 现象?

A 扇出减少尾延迟
B 扇出多个请求时最慢者决定整体延迟,单个慢请求被放大为常见延迟 ✓ 正确答案
C 端到端延迟由最快子请求决定
D 扇出不影响尾延迟
#

6. Hedging requests 如何等到 P99 进度阈值时启动 duplicate request 取最快响应?

A 主请求在 P99 阈值未返回时发 duplicate 取最快,用冗余请求对冲慢节点 ✓ 正确答案
B hedging 一直等待主请求
C hedging 不增加请求负载
D hedging 降低尾延迟但无需冗余
#

7. Backup request suppression 中,当主请求在 SLA 内完成时取消 backup 的工程价值?

A backup 总被执行
B 主请求在 SLA 内完成时取消 backup,避免冗余请求浪费资源 ✓ 正确答案
C suppression 增加冗余负载
D suppression 与冗余无关
#

8. Speculative execution 在数据库的 OLTP 与 OLAP 场景的不同工程取舍?

A OLTP 用激进推测执行
B 两者激进程度相同
C OLTP 谨慎对冲慢副本尾延迟,OLAP 用推测执行消除 straggler 缩短作业时间 ✓ 正确答案
D OLAP 不关注 straggler
#

9. Tied requests 如何让两个请求共享结果但仅一个执行 expensive callback?

A tied requests 不共享结果
B 两个请求都执行昂贵回调
C 共享结果但仅一个执行昂贵回调,对冲尾延迟又避免重复计算 ✓ 正确答案
D tied requests 与 hedged 无关
#

10. 长尾延迟的产生机制,扇出请求中的慢节点、GC 抖动、网络排队如何放大整体延迟(最慢者决定)?

A 尾延迟与最慢者无关
B 慢节点、GC 抖动、网络排队产生少数极慢请求,最慢者决定在扇出中放大影响 ✓ 正确答案
C GC 抖动不影响尾延迟
D 扇出减少慢节点影响
#

11. 长尾延迟的治理手段,超时与对冲请求(hedged requests)、备份请求(tied requests)、重试策略如何配合?

A 重试无需控制次数
B 对冲请求不会增加后端负载
C 超时控制 + 对冲/备份请求取最快 + 受控重试,能对冲慢节点但也有放大负载的代价 ✓ 正确答案
D 超时控制与长尾无关
#

12. 用 HDR Histogram 度量延迟分位,为什么 P99 在均匀直方图桶下误差大,对数桶如何提升分位估算精度?

A 均匀桶比对数桶更精确
B 均匀桶在宽范围下 P99 误差大,HDR 用对数桶保证相对误差恒定提升精度 ✓ 正确答案
C HDR 用均匀桶
D 对数桶无法度量 P99
#

13. 慢节点驱逐与负载感知路由,如何用 EWMA 平滑的延迟指标识别慢副本,hedged request 的额外成本如何控制?

A EWMA 平滑延迟识别慢副本并躲避,通过阈值/比例/抑制控制 hedged 冗余成本 ✓ 正确答案
B EWMA 无法识别慢副本
C hedged 成本无需控制
D 负载感知路由与慢节点无关
#

14. 背压与准入控制,过载时主动拒绝(load shedding)相比无限排队为何能保护 P99,快速失败如何避免拖垮依赖?

A 快速失败会拖垮依赖
B 无限排队能保护 P99
C load shedding 让所有请求堆积
D load shedding 主动拒绝避免无限排队保护 P99,快速失败避免慢依赖拖垮整体 ✓ 正确答案
#

15. 长尾延迟的观测,P99/P999 分位与扇出请求的分解追踪(trace)如何定位慢分支?

A P99 无法反映尾延迟
B P99/P999 量化尾延迟严重度,trace 分解定位慢分支 ✓ 正确答案
C trace 无法定位慢分支
D 只需 P99 即可定位来源
#

16. 延迟分位的度量,P99/P999 与扇出分解如何观测?

A 扇出分解无法定位慢分支
B P99/P999 量化整体尾延迟,扇出分解定位贡献尾延迟的分支 ✓ 正确答案
C P99 与扇出分解无关
D 只需分位无需分解
#

17. 长尾延迟的消除,副本备份请求与超时重试策略如何选择?

A 备份请求无法对冲慢副本
B 副本备份请求取最快对冲慢副本,超时重试规避慢副本,共同消除尾延迟 ✓ 正确答案
C 超时重试会加剧尾延迟
D 只需一种手段即可完全消除
#

18. 长尾的观测,延迟直方图与扇出追踪如何配合?

A 延迟直方图反映分位分布,扇出追踪定位慢分支,二者结合观测长尾 ✓ 正确答案
B 直方图能定位慢分支
C 追踪能提供分位分布
D 长尾无法观测
#

19. 长尾与资源调度,延迟感知调度与副本冗余如何权衡?

A 延迟感知调度规避慢节点,副本冗余对冲慢节点,共同治理尾延迟 ✓ 正确答案
B 延迟感知调度与慢节点无关
C 副本冗余无法对冲慢节点
D 资源调度不影响长尾
#

20. 存储层长尾,SSD 内部 GC 停顿与磁盘寻道如何造成 P99 尖峰,写放大为何让分位延迟不稳定?

A SSD GC 停顿与磁盘寻道造成 P99 尖峰,写放大使分位延迟不稳定 ✓ 正确答案
B GC 不影响写延迟
C 写放大使分位延迟稳定
D 寻道延迟不影响 P99