面试题答案
一键面试1. 基于失败率的熔断策略
- 策略描述:当请求失败率达到一定阈值(例如 50%),在接下来的一段时间(熔断时间窗)内,熔断电路开启,后续请求不再直接调用服务,而是快速返回错误响应,避免大量无效请求。一段时间后(探测间隔),会尝试放行少量请求,若这些请求成功率较高,则关闭熔断恢复正常调用;若失败率仍高,则继续保持熔断状态。
- 适用场景:适用于对稳定性要求极高,且服务调用失败会对系统整体功能产生严重影响的场景。例如金融交易系统,每笔交易都至关重要,若调用支付服务失败率过高,开启熔断能防止更多用户遭受交易失败的损失,同时保护支付服务不被过多无效请求压垮。
2. 基于响应时间的熔断策略
- 策略描述:若服务的平均响应时间超过设定的阈值(如 200ms),表明服务可能出现性能瓶颈或故障,熔断电路开启,后续请求直接返回错误。同样,经过一段时间的熔断后,尝试放行少量请求进行探测,根据响应时间情况决定是否关闭熔断。
- 适用场景:适用于对响应时间敏感的应用场景,如实时通信系统、在线游戏等。在这些场景中,用户对响应的及时性要求很高,若服务响应时间过长,会严重影响用户体验,采用基于响应时间的熔断策略可快速阻断慢服务,保障系统整体的实时性和流畅性。