一 简介
Hystrix是一个实现了超时机制和断路模式的工具类库。
Hystrix是由Netflix开源的一个延迟和容错库,用于隔离访问远程系统、服务或者第三方库,防止级联失败,从而提升系统的可用性与容错性。Hystrix主要通过以下几点实现延迟和容错。
1 包裹请求:使用HystrixCommand包裹对依赖的调用逻辑,每个命令在独立线程中执行。这使用了设计模式中的“命令模式”。
2 跳闸机制:当某服务的错误率超过一定的阈值时,Hystrix可以自动或手动跳闸,停止请求该服务一段时间。
3 资源隔离:Hystrix为每个依赖都维护了一个小型的线程池(或者信号量)。如果该线程池已满,发往该依赖的请求就被立即拒绝,而不是排队等待,从而加速失败判定。
4 监控:Hystrix可以近乎实时地监控运行指标和配置的变化,例如成功、失败、超时、以及被拒绝的请求等。
5 回退机制:当请求失败、超时、被拒绝,或当断路器打开时,执行回退逻辑。回退逻辑由开发人员自行提供,例如返回一个缺省值。
6 自我修复:断路器打开一段时间后,会自动进入“半开”状态。
二 Hystrix回退防止级联故障
Hystrix实现容错机制
三 参考

相关文章:

  • 2021-07-25
  • 2021-09-23
  • 2021-09-17
  • 2021-12-01
  • 2022-01-08
  • 2022-12-23
  • 2022-12-23
  • 2021-07-31
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-07-27
  • 2021-10-27
  • 2021-05-25
  • 2021-07-12
  • 2021-06-10
相关资源
相似解决方案