雪崩,限流,熔断,降级

  1. 服务雪崩,名字挺形像,A-->B-->C,如果c服务有大量的请求超时积压,导致B服务一直没有返回结果,也积压着请求,最后A就积压,整个链路就崩了。特别在有大量重试的时候,这种情况更严重,本来服务就处理不过了,client请求发现超时,又重试一次;还有一种请求就是集群中,如果某几台机器 不可用,下线了,流量全部到了其他机器上,这一下次大流量到了其他机器上,就直接崩了服务
  2. 为了处理这种系统不堪重负的情况,保护系统能正常运行,有几个措施
  3. 限流,在服务启动之初,就知道最大承载的压力,如果请求超过这个上限负载,就从最前面入口打回了请求。
  4. 熔断,A-->B,如果A发现B有一定数量的异常,为了不影响A自己本身的服务,当A调用B的时候,直接返回个默认值,不走B服务了。这样减少A的超时和B服务的压力,直到B服务正常,再把熔断关闭
  5. 降级,A服务中,如果发现在系统压力过大,直接关闭或者限制某些非核心的接口,让机器资源集中处理核心业务,保证公司业务正常。
  6. 熔断和降级的共同点: 都是为了保护系统,防止崩溃,都会让用户体验到某种服务不可用
  7. 熔断和降级的不同点: 熔断是当下游系统有异常,有故障的时候触发的;降级是主动发现了系统压力大,关闭某些服务的,降级系统负载。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容