面试题答案
一键面试熔断机制
- 定义:熔断机制类似于电路中的保险丝,当某个微服务的调用失败率(如超时、异常等)达到一定阈值时,熔断器会“熔断”,暂时切断对该服务的调用,避免大量无效请求继续调用故障服务,从而防止故障扩散。之后会进入“半熔断”状态,尝试少量调用,如果成功则恢复正常调用,若失败则继续熔断。
- 场景举例:比如在电商系统中,商品详情服务依赖于库存服务。若库存服务由于某种原因(如网络波动、服务器过载)频繁出现超时,当超时率超过设定阈值(如80%),熔断器熔断,商品详情服务不再调用库存服务,直接返回兜底数据,告知用户库存信息获取可能不准确,避免商品详情服务因大量等待库存服务响应而自身出现故障。
降级策略
- 定义:降级策略是当系统整体资源(如CPU、内存、线程数等)紧张或某个服务出现问题时,为保证核心业务的正常运行,主动降低一些非核心服务的功能或性能,甚至停止对非核心服务的调用。降级通常是由系统资源状况或业务规则驱动的。
- 场景举例:还是电商系统,在大促期间,系统资源紧张。为保证下单、支付等核心业务的顺畅,对一些非核心服务(如商品推荐服务、用户积分展示服务)进行降级处理。比如商品推荐服务不再实时计算推荐结果,而是返回固定的热门商品列表;用户积分展示服务暂时不展示积分,只显示一个提示信息,告知用户积分相关功能在大促期间暂时简化。
显著区别
- 触发原因:
- 熔断机制:主要基于服务调用的失败情况(如失败率、超时率等)触发。
- 降级策略:更多基于系统整体资源状况(如CPU使用率过高、内存不足等)或业务规则(如大促期间对非核心业务的处理)触发。
- 处理方式:
- 熔断机制:熔断后会有“半熔断”状态来试探恢复服务调用,成功则恢复正常调用。
- 降级策略:主动降低非核心服务功能或停止调用,通常不会自动恢复,需要人工干预或根据系统资源恢复情况手动调整。