首页 > 编程学习 > 降级面试题大全

降级面试题大全

发布时间:2022/11/13 4:54:42

降级面试题大全


目录

面试题汇总

Q:为什么系统需要降级

Q:如何设计一套降级方案

Q:哪些业务可以降级

Q:有哪些降级策略

Q:有哪些降级逻辑

Q:有哪些降级框架


面试题汇总

Q:为什么系统需要降级

分布式系统环境下,通常会有很多层的服务调用。由于网络原因或自身的原因,服务一般无法保证100%可用。如果一个服务出现了问题,调用这个服务就会出现线程阻塞的情况,由于服务与服务之间的依赖性,故障会传播,不可用沿请求调用链向上传递,会对整个微服务系统造成灾难性的严重后果,这就是服务故障的“雪崩效应”。

所以当第一个服务不可用时,调用方要及时降级,避免整个系统的故障

Q:如何设计一套降级方案

一套完整的降级方案需要回答三个问题

  1. 哪些业务可以降级
  2. 使用哪种方式进行降级
  3. 降级后该如何处理

举例:为微信抢红包设计一个降级方案,红包列表的展示属于抢红包的非核心链路,因此,对于列表展示,在业务压力较大的情况下,通过开关降级的方式,对头像等信息的读进行关闭,并展示一个静态的空白图像替代,从而完成降级。

Q:哪些业务可以降级

降级的功能点主要从服务端链路考虑,即根据用户访问的服务调用链路来梳理哪些需要降级,划分核心与非核心场景,以损失部分体验的代价,来换取整个业务链路的稳定性和持续可用。

故非核心的页面(推荐信息、热销榜等)、影像(头像、展示图等)、请求、功能进行降级

Q:有哪些降级策略

开关降级:通过配置开关,对功能进行启用关闭

超时降级:通过超时时间设置,对超时请求进行降级逻辑处理

熔断降级:通过设置熔断参数、熔断策略进行降级,并动态探测恢复

限流降级:通过设置限流参数,对流量进行限制

多级降级:根据业务场景配置多层降级

Q:有哪些降级逻辑

  1. 固定的默认值(如排队或重试等静态页面、空白图像等)
  2. 进入兜底逻辑
  3. 通过缓存处理
  4. 同步处理转异步处理
  5. 对功能或入口进行屏蔽

Q:有哪些降级框架

降级框架-选型

Copyright © 2010-2022 dgrt.cn 版权所有 |关于我们| 联系方式