Hystrix介绍

  • Hystrix是用于处理延迟和容错的开源库
  • Hystrix主要用于避免级联故障,提高系统弹性
  • Hystrix解决了由于扇出导致的"雪崩效应"
  • Hystrix的核心是"隔离术"和"熔断机制"

 

Hystrix主要作用

  • 服务隔离和服务熔断
  • 服务降级、限流和快速失败
  • 请求合并和请求缓存
  • 自带单体和群体监控

 

Hystrix的流程(业务验证:2~6)

  1. 调用起始方法
  2. 判断有没有缓存
  3. 熔断有没有开启
  4. 限流有没有触发
  5. 业务执行有没有失败
  6. 业务执行有没有超时
  7. 所有的失败都会触发fallback

 

Hystrix两种命令模式

  • HystrixCommand和HystrixObservableCommand
  • Command会以隔离的形式完成run方法调用
  • ObservableCommand使用当前线程进行调用