1、什么是熔断

  1. A服务调用B服务的某个功能,由于网络不稳定问题,或者B服务卡机,导致功能时间超长。如果这样子的次数太多,我们就直接将B断路(A不再请求B接口),凡是调用B的直接返回降级数据,不必等待B的超长执行。这样B的故障问题就不会级联影响到A

2、什么是降级

  1. 这整个网站处于流量高峰期,服务器压力剧增,根据当前业务情况及流量,对一些服务和页面进行有策略的降级[停止]服务,所有的调用直接返回降级数据。以此缓解服务器资源的压力,以保证核心业务业务的正常运行,同时也保持了客户和大部分客户得到正确的相应。(例如:注册服务和秒杀服务在同一台服务器上,此时秒杀活动激烈,可以选择停到或者分配较少的资源给注册服务,大部分乃至全部资源给秒杀服务)。

3、熔断和降级的异同点

  • 相同点:
    • 为了保证集群大部分服务的可用性和可靠性,防止崩溃,牺牲小我。
    • 用户最终体验到某个功能不可用。
  • 不同点:
    • 熔断是被调用方故障,触发的系统主动规则。
    • 降级是基于全局考虑,停止一些正常服务,释放资源。

      4、什么是限流

      对打入服务的请求流量进行控制,使服务能够承担不超过自己能力的流量压力。即对我们服务入口的流量进行限制(例如我们服务每秒能够接受的请求就是1000,那我们每秒只接受1000个请求,其他的请求直接报个错,调用方自己重试)。