Sentinel 限流熔断

共 42 题
#

1. Gateway 的 route 资源和自定义 API 分组如何选择,路径参数归一化为何影响限流准确性

A 用自定义 API 分组定义资源,路径参数归一化避免高基数,保证限流准确 ✓ 正确答案
B URL 每个参数都作为独立资源
C route 资源粒度最细
D 路径参数不影响限流
#

2. QPS 流控与并发线程数流控分别保护到达速率和占用量,慢调用场景应优先选择哪个

A 慢调用场景应优先用并发线程数流控保护资源占用量 ✓ 正确答案
B 两者都保护到达速率
C QPS 流控能感知调用耗时
D 并发线程数流控管速率
#

3. Sentinel 与 Resilience4j 2.x 在 Spring Boot 4.0 中功能、性能及生态对比的选型建议

A Resilience4j 提供控制台与集群流控
B 两者功能完全一致
C Sentinel 强于平台化动态规则,Resilience4j 强于轻量可组合,按治理需求选择 ✓ 正确答案
D Resilience4j 不支持熔断
#

4. Sentinel 与 Spring AI 2.0 模型调用结合的令牌桶限流在大模型推理场景下的配置

A 用令牌桶限流平滑速率、并发流控限制推理占用,防突发与超限 ✓ 正确答案
B 大模型推理无需限流
C 令牌桶只适合 HTTP 接口
D 大模型无法用 Sentinel
#

5. Sentinel 在 Spring Boot 4.0 中与 OpenTelemetry 集成的限流上下文与 Trace 关联方案

A 限流无法关联 Trace
B Sentinel 无法集成 OTel
C OTel 只用于指标
D 在 blockHandler 记录 OTel span/标签,把限流上下文关联到 Trace,实现可观测 ✓ 正确答案
#

6. Sentinel 在 Spring Boot 4.0 虚拟线程下的 Slot Chain 实现是否会因线程挂载导致漏限流

A Sentinel 用滑动窗口/entry 计数统计,虚拟线程不导致漏限流,上下文需显式传递 ✓ 正确答案
B Sentinel 统计依赖平台线程,虚拟线程会漏限流
C 虚拟线程下 Sentinel 无法使用
D 统计基于线程挂载
#

7. Sentinel 在 Spring Boot 4.x 的兼容

A Sentinel 天然兼容所有 Boot 版本
B 无需兼容矩阵
C Boot 4 中 Sentinel 无法使用
D 兼容性取决于 Spring Cloud Alibaba 版本,需验证流控、熔断、数据源 ✓ 正确答案
#

8. Sentinel 熔断器(DegradeRule)三种策略(异常比例/异常数/慢调用)

A 只有异常比例一种
B 慢调用比例不触发熔断
C 异常比例、异常数、慢调用比例三种策略,按故障特征选择 ✓ 正确答案
D 熔断后进入半开立即恢复
#

9. Sentinel 的 Dashboard 与集群流控

A 集群流控与单机限流等价
B Dashboard 不管理规则
C 集群流控通过 Token Server 统一分配令牌,控制集群总量,故障时降级本地限流 ✓ 正确答案
D 集群流控无需 Token Server
#

10. Sentinel 的热点参数限流

A 按参数值(如商品 ID)分别限流,保护热点参数 ✓ 正确答案
B 只对资源整体限流
C 无法指定参数索引
D 热点参数限流无场景
#

11. Sentinel 的系统自适应限流(SystemRule)CPU 使用率、入口 QPS、并发线程数的采集机制

A 只基于 CPU
B 基于 CPU、入口 QPS、并发线程数等系统指标,超阈值自动限流保护系统 ✓ 正确答案
C 系统限流需手动管理
D 采集机制不涉及系统监控
#

12. Sentinel 的限流策略(QPS/线程数/冷启动)

A 只有 QPS 限流
B 冷启动会瞬间放全部流量
C 支持 QPS、线程数、冷启动、匀速排队等策略,按场景选择 ✓ 正确答案
D 线程数限流就是 QPS 限流
#

13. Sentinel 秒级指标如何与业务延迟、线程池和下游错误关联,采集时怎样控制标签基数

A RT 反映延迟、线程反映占用、异常反映下游错误,标签用低基数避免指标爆炸 ✓ 正确答案
B 标签基数越高越好
C 用户 ID 应作为标签
D 标签基数无影响
#

14. Sentinel 集群限流与 Spring Cloud LoadBalancer 的实例选择策略(基于 CPU/权重)

A 集群限流负责实例选择
B 集群限流控总量,LoadBalancer 按权重/CPU 分配实例 ✓ 正确答案
C 负载均衡控总量
D 两者冲突
#

15. 从 Nacos 持久化 Sentinel 规则时,推送方向、版本和原子替换应如何设计以避免控制台覆盖

A 控制台可直接修改内存规则
B 规则无需版本
C 以 Nacos 为唯一规则源,推送方向单向,规则变更原子替换 ✓ 正确答案
D 控制台覆盖无影响
#

16. 使用 Sentinel Dashboard 与 Prometheus + Grafana 联动展示限流指标的告警规则配置

A Sentinel 指标接 Prometheus 存储,Grafana 展示,配置限流/熔断告警规则 ✓ 正确答案
B Dashboard 用于长期存储
C 告警无需 Prometheus
D Dashboard 擅长告警
#

17. 如何通过延迟注入、错误注入和规则中心断连验证 Sentinel 的限流、半开恢复与降级路径

A 只需注入流量
B 降级路径无法验证
C 规则断连后限流失效
D 延迟注入验证慢调用熔断,错误注入验证异常熔断,断连验证规则兜底 ✓ 正确答案
#

18. 慢调用比例策略中的最大响应时间、最小请求数和统计窗口如何共同决定是否熔断

A 需请求数达到最小请求数且慢调用占比超阈值才熔断 ✓ 正确答案
B 只要一个慢调用就熔断
C 统计窗口无影响
D 最小请求数导致误熔断
#

19. 热点参数限流如何从参数索引提取值,参数高基数与对象转换会带来什么成本

A 参数基数无影响
B paramIdx 提取 key,高基数导致统计节点爆炸,对象转换有开销 ✓ 正确答案
C 任何参数都适合做热点 key
D 转换零成本
#

20. 熔断器从关闭、打开到半开如何迁移,半开探测并发数为何必须受到限制

A 半开并发数应很大
B OPEN 后直接恢复
C 半开仅放行少量探测请求验证恢复,避免恢复瞬间过载 ✓ 正确答案
D 半开探测失败也恢复
#

21. 虚拟线程使线程数量不再代表稀缺平台线程后,并发线程数流控规则应如何重新校准

A 并发数不再代表平台线程,需按实际资源(连接池/下游)重新校准阈值 ✓ 正确答案
B 虚拟线程下并发数规则无需调整
C 虚拟线程下并发数无意义
D 并发流控失效
#

22. 集群流控的 Token Server 成为瓶颈或分区时,客户端失败策略应偏向放行还是拒绝

A 一律拒绝
B 一律放行
C 按业务权衡:放行保可用(可能超限),拒绝保总量(可能误伤),常用本地限流兜底 ✓ 正确答案
D 失败策略无影响
#

23. @SentinelResource 的 blockHandler 与 fallback 分别处理什么异常,方法签名需满足哪些规则

A 两者处理相同异常
B fallback 优先于 blockHandler
C blockHandler 处理 BlockException,fallback 处理业务异常,签名需同参数 ✓ 正确答案
D blockHandler 处理业务异常
#

24. OpenFeign 集成中 Sentinel 拒绝与远端调用失败应怎样区分,统一 fallback 会掩盖什么

A 两者应统一处理
B blockHandler 处理限流拒绝,fallback 处理远端失败,统一 fallback 会掩盖差异 ✓ 正确答案
C 统一 fallback 是最好的
D 无法区分
#

25. Sentinel 与 Hystrix 的差异

A Hystrix 提供动态规则
B Sentinel 用线程池隔离
C 两者功能相同
D Sentinel 用资源+滑动窗口统计,支持流控/熔断/热点/动态规则,Hystrix 线程池隔离且已停维 ✓ 正确答案
#

26. Sentinel 与 OpenFeign 的集成

A fallback 无需配置
B Feign 无法集成 Sentinel
C 集成后无熔断
D 需开启 feign.sentinel.enabled,Feign 调用被 Sentinel 保护并可用 fallback 降级 ✓ 正确答案
#

27. Sentinel 与 Spring Cloud Gateway 的集成

A 通过 SentinelGatewayFilter 为 route 资源限流,block 处理器降级 ✓ 正确答案
B 网关无法集成 Sentinel
C 集成只能限流不能熔断
D 无需过滤器
#

28. Sentinel 与 Spring Modulith 边界的协作

A Modulith 不支持 Sentinel
B 边界与治理无关
C Sentinel 资源可按 Modulith 模块边界划分,按模块治理流量 ✓ 正确答案
D 只能全局治理
#

29. Sentinel 槽链如何依次完成节点统计、流控、熔断和系统保护,扩展 Slot 时顺序为何重要

A 策略槽先于统计槽
B 顺序无关紧要
C 先统计(StatisticSlot)再做系统保护/流控/熔断,扩展槽顺序影响数据依赖与执行时机 ✓ 正确答案
D 统计在最后
#

30. Sentinel 的 Authority(黑白名单)

A 黑白名单只能拒白名单
B AuthorityRule 按来源标识(origin)控制白名单/黑名单访问 ✓ 正确答案
C 来源无法识别
D 黑白名单无应用
#

31. Sentinel 的 BlockException 与降级处理

A BlockException 是业务异常
B 无需处理 BlockException
C BlockException 是 Sentinel 阻断的基类,含流控/熔断/系统等子类,用 blockHandler 降级 ✓ 正确答案
D BlockException 与业务异常等价
#

32. Sentinel 的 Warm Up(预热)

A 启动即放全量
B 预热只影响限流
C Warm Up 让阈值从低到高增长,避免冷启动被突发流量击穿 ✓ 正确答案
D Warm Up 无场景
#

33. Sentinel 的核心概念(资源/规则/上下文)

A 资源是治理策略
B 上下文与调用无关
C 规则是被保护对象
D 资源是被保护对象,规则定义治理策略,上下文关联调用来源与链路 ✓ 正确答案
#

34. Sentinel 的链路(Link)与上下文传播

A 链路是独立的
B 链路不支持按来源限流
C 上下文无需传播
D 链路反映资源调用树,上下文通过 ContextUtil 传播,异步场景需显式传递 ✓ 正确答案
#

35. Sentinel 与 Spring Cloud Alibaba 协同的热点参数限流(Hot Parameter)

A 热点规则只能静态配置
B 热点限流无法动态调整
C @SentinelResource 标注资源,热点规则通过 Nacos 动态下发 ✓ 正确答案
D 协同无意义
#

36. Sentinel 的 Warm Up 流控模式在 Spring Boot 4.0 中冷启动保护阈值的计算公式是什么

A 初始阈值高于目标阈值
B 初始阈值 = 目标阈值 / coldFactor(默认 1/3),预热期逐步增长到目标 ✓ 正确答案
C 预热无增长
D coldFactor 无影响
#

37. Warm Up 规则如何让可用令牌逐步增加,冷系统面对突发流量时还需配合哪些保护

A Warm Up 即可完全保护
B Warm Up 平滑放量需配合系统自保护、熔断、缓存预热 ✓ 正确答案
C 冷系统无需保护
D 突发流量无害
#

38. 伪造来源标识的风险应在哪层控制

A 客户端可自报来源
B 服务端信任任意 origin
C 伪造来源无风险
D 来源标识应在可信层(网关/认证)注入,服务端不信任客户端自报 ✓ 正确答案
#

39. 匀速排队控制如何计算等待时间,超过最大排队时长的请求为何应立即拒绝

A 等待超过最大排队时长立即拒绝,避免队列积压与请求失效 ✓ 正确答案
B 排队请求应无限等待
C 超时也要放行
D 匀速排队不限制间隔
#

40. 异常比例与异常数策略适合的流量规模有何不同,业务异常是否都应计入统计

A 所有异常都计入熔断
B 异常比例适合大流量、异常数适合小流量,业务异常不应计入熔断统计 ✓ 正确答案
C 业务异常应计入
D 流量规模无影响
#

41. 把完整 URL 或用户 ID 直接作为资源名会造成什么基数问题,资源粒度应如何规范

A 应直接用完整 URL 作为资源名
B 资源名应按类别归一化(低基数),动态值用热点参数限流 ✓ 正确答案
C 高基数无副作用
D 用户 ID 适合做资源名
#

42. 系统自适应规则结合系统负载、CPU 和入口 QPS 时,容器 CPU 限额会怎样影响阈值判断

A 容器 CPU 使用率与宿主一致
B 容器 CPU 使用率是相对份额的,可能失真导致误限流,需校准阈值或用入口 QPS 替代 ✓ 正确答案
C 容器限额无影响
D CPU 判断总是准确