Hytrix容错保护

服务降级,熔断与限流

服务雪崩

一条服务链上可能有多个服务,每个服务若干节点,若其中一个节点故障,上游请求打到故障的节点,加入请求一直阻塞,大量堆积的请求可能会导致服务崩溃。这就是服务雪崩

什么是Hystrix

Hystrix 是 Netflix 的一个重要组件,提供了断路器、资源隔离与自我修复功能如下是Hystrix作为断路器,阻止级联失败。

一个用于处理分布式系统的延迟和容错的开源框架,它能够保证在一个微服务依赖出问题的情况下,不会导致整体微服务失败,避免级联故障 (服务雪崩),以提高分布式系统的弹性

服务降级

Fallback指服务器压力剧增的情况下,根据实际业务情况及流量,对一些服务和页面有策略的不处理或换种简单的方式处理,从而释放服务器资源以保证核心交易正常运作或高效运作

可以在方法上使用@HystrixCommand(fallbackMethod =getDefaultuser")来定义服务降级方法

触发条件

  • 程序运行异常

  • 服务熔断

  • 线程池/信号量打满

  • 服务器异常宕机

  • 程序运行超时

  • 程序运行异常

熔断降级

当下游服务因访问压力过大而响应变慢或失败上游服务为了保护系统整体的可用性,可以暂时切断对下游服务的调用。这种牺牲局部,保全整体的措施就叫做服务熔断

概念来源于电子工程中的断路器(Circuit Breaker)

posted @ 2023-11-16 22:00  3DG  阅读(36)  评论(0)    收藏  举报