一、Hystrix是什么
Hystrix是Netfix开源一个高可用的系统架构,使整个系统处于高可用的状态,不会因为异常而无法使用,也不会因为某些接口返回错误而让用户体验不友好,或者在某些高峰时期,用户访问量过多而导致服务不可访问等服务异常情况。
二、Hystrix能做什么
资源隔离:这里换句话来说就是线程限制,限制某些代码只能使用多少线程资源,不会因为某些代码启动过多的线程,导致系统访问受限。 bulkhead(舱壁隔离技术)、swimlane(泳道技术)、circuit breaker(断路技术)
熔断:在一些特殊情况下,比如数据库无法访问,或者某些异常,导致服务接口无法访问,这时启动熔断机制,可以返回一些制定好的数据
限流:在高峰有5000个用户同时访问系统,但某些服务比如mysql只能处理固定的用户信息比如3000,但在高峰,实际的访问量超过了3000,那么这时候不做限流的话,大量用户过来很容易出现雪崩的情况,使用限流后,现在在高峰只能限制2000的用户访问mysql
降级:某些服务出现异常,需要对该服务进行降级处理, fallback
服务监控:Hystrix提供针对运维人员的服务监控+报警及优化的功能,方便运维维护系统监控