Hystrix单方法熔断配置
# 1 全局熔断
feign.hystrix.enabled = true #开启熔断
hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds = 1000 #熔断超时时间1S
1
2
2
提示
当需要做熔断的全局参数配置时,如需要配置超时时间只需要将hystrix.command.XXX ,XXX为default。
hystrix的配置可在com.netflix.hystrix.HystrixCommandProperties类查看,具体有哪些配置。
# 2 方法层级熔断
场景:有时候我们需要对熔断粒度控制到方法层级,例如全局的熔断超时时间是2S,而某个feign的调用我们希望是6S,则可用如下配置。
hystrix.command."TestCodeFeign#fetch(URI,TestCodeDto)".execution.isolation.thread.timeoutInMilliseconds = 6000
# 如上配置:只需要将command 后面加上相应的方法即可
# DispatchCodeFeign:具体的feign
# fetch:feign的方法
# URI:参数1
# DisPatchCodeDto:参数2
1
2
3
4
5
6
2
3
4
5
6
提示
注:现在百度上很多的文章,都是错的,如有的文章告诉你 方法后面的参数列表,除了基础类型和String以外都需要加上全路径的包名,通过debug HystrixCommandProperties类可以发现并非如此,而是直接写上类名即可。