- Hystrix是用于处理延迟和容错的开源库
- Hystrix是用于避免级联故障,提高系统弹性
- Hystrix解决了扇出导致的雪崩效应
- Hystrix的核心是服务隔离术和熔断
- Hystrix的主要作用是服务降级,限流和快速失败
- Hystrix自带单体和集群监控
https://my.oschina.net/7001/blog/1619842
Hystrix两种命令模式
HystrixCommand与HystrixObservableCommand对比?
Command会以隔离的形式完成run方法的调用
ObservableCommand会以当前线程进行调用
hystrix隔离术
- hystrix提供了信号量和线程两种隔离手段
- 线程隔离会在单独的线程上执行业务逻辑
- 信号量隔离在调用线程上执行
- hystrix可以不填写ThreadPoolKey
- 默认Hystrix会使用Groupkey命名线程池
- 在setting中加入andThreadPoolkey进行命名
Hystrix降级触发原则
- HystrixBadRequestException以外的异常
- 运行超时或熔断处于开启状态
- 线程池或者信号量已满
Hystrix熔断机制
熔断器是一种开关,用来控制流量是否执行业务逻辑
熔断器核心指标:快照时间窗,请求总数阈值,错误百分比阈值