一、熔断器原理
熔断机制与家里的电路熔断器原理类似,电路发生短路是立刻熔断电路避免灾难发生。在分布式系统中应用服务熔断后;服务调用方可以自己判断哪些服务反应慢或者超时。
从容针对性熔断。防止拖垮整个服务。
Hystrix熔断机制,可实现弹性容错,当服请求状况好转后,可自动重连。通过短路方式,将后续请求拒绝,一段时间后(默认5s)允许部分请求通过,调用成功熔断器关闭,否则继续拒绝请求。
熔断状态级模型:
状态机的3个状态:
- closed:关闭状态,所以请求正常访问
- open:打开状态,所以请求都会被降级。Hystrix会对请求的情况进行计数,当一定时间内失败请求数达到阈值,则触发熔断、断路器完全打开。默认失败比例阈值50%,请求数不低于20次。
- half Open :半开状态,断路器打开后会进入休眠时间(默认5s)。随后断路器会自动进入半开状态,此时部分请求通过,如请求成功则关闭断路器,否则保存打开状态,再次进入休眠计时。
熔断器参数配置
1 hystrix: 2 command: 3 default: 4 circuitBreaker: 5 #触发熔断错误比例阈值,默认值50% 6 errorThresholdPercentage: 50 7 #熔断后休眠时长,默认值5秒 单位:毫秒 8 sleepwindowinMilliseconds: 10000 9 # 熔断触发最小请求次数,默认值是20 10 requestvolumeThreshold: 10