Spring-Cloud-Hystrix-学习笔记
如果服务器提供者响应非常缓慢,那么消费者对提供者的请求就会被强制等待,直到等待者响应或超时.
在高负载情况下,如果不作任何处理,此类问题可能会导致服务消费者的资源耗尽甚至导致整个系统奔溃.
例如,曾经发生过一个案例,某电子商务网站在一个活动中.过多的并发的请求,导致用户支付的请求延时
很久都没有响应,在等待很长时间后最终失败.支付失败又导致用户重新刷新页面并再次尝试支付,进一步
增加服务器的负载.最终导致整个系统奔溃.
当依赖的服务不可用时,服务自行会不会被拖垮?
如何容错
为网络请求设置超时时间
使用断路器模式
Hystrix简介
Hystrix是有Netflix开源的一个延迟和容错库,用于隔离访问远程系统,服务或者第三方库,防止级联失败,从而
提示系统的可用性与容错性.
Hystrix主要通过以下几点实现延迟和容错.
- 包裹请求 :
- 跳闸机制 :
- 资源隔离 :
- 监控 :
- 回退机制 :
- 自我修复 :
1 | feign: |
.