一、问题







5.2 Hystrix 的介绍

hystrix的使用
1、对RestTemplate的支持
a、引入依赖

b、启动类上激活hystrix

c、配置熔断触发的降级逻辑

d、在需要保护的接口上使用@HystrixCommand配置

e、配置判断请求超过多少时间,触发熔断保护机制。

f、测试消费者项目接口,这个接口是调用服务提供者项目的,将服务提供者项目关掉,然后访问。
g、对整个类的接口统一配置熔断降级方法,这样就不用每个接口都配置一遍

2、对feign组件的支持
a、引入依赖(feign中已经继承了hystrix)
b、在feign中开启hystrix。

c、自定义一个接口的实现类,这个实现类就是熔断触发的降级类。

d、修改feignClient接口添加降级方法的支持

e、设置链接超时时间,进行熔断
#在feign中开启对hystrix的支持
feign:
client:
config:
default:
connectTimeout: 5000
readTimeout: 5000
hystrix:
enabled: true
hystrix:
command:
default:
execution:
isolation:
thread:
timeoutInMilliseconds: 5000 #默认的连接超时时间1秒,若一秒没有返回数据,自动的触发降级逻辑。上面的feign超时时间也要一起设置。
circuitBreaker:
requestVolumeThreshold: 5 #触发熔断的最小请求次数,默认20 /10秒
sleepWindowInMilliseconds : 10000 #熔断多少秒后去尝试请求 默认5 打开状态的时间
errorThresholdPercentage: 50 #熔断触发的失败请求最小占比,默认50%
# threadpool:
# default:
# coreSize: 10 # 全局配置
这个feign和hystrix配合,设置链接超时熔断。一定要feign跟hystrix超时时间一起设置。
六、

设置监控信息:


查询监控接口:

暴露hystrix所有监控端点

查询监控状态
