Hystrix是一个延迟和容错库,目的是隔离远程系统、服务和第三方库的访问点,停止级联故障,并在不可避免发生故障的复杂分布式系统中实现快速恢复。主要靠Spring的AOP实现。
实现原理:
正常情况下,断路器关闭,服务消费者正常请求微服务。
一段时间内,失败率达到一定阈值,断路器将断口,此时不再请求服务提供者,而是只是快速失败的方法(短路方法)。
断路器打开一段时间,自动进入”半开“状态,此时,断路器可允许一个请求方法服务提供者,如果请求调用成功,则关闭断路器,否则继续保持断路器打开状态。
断路器hystrix是保证了局部发生错误,不会扩展到整个系统,从而保证系统的即使出现局部问题也不会造成整个系统雪崩。
Tags:hystrix