我是靠谱客的博主 时尚康乃馨,最近开发中收集的这篇文章主要介绍21、Hystrix:基于feign调用的熔断配置,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、引入依赖(feign中已经集成Hystrix)

二、在feign中配置开启Hystrix

feign:
client:
config:
service-product:
#需要调用的服务名称
loggerLevel: FULL
#开启对hystrix的支持
hystrix:
enabled: true

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

@Component
public class ProductFeignClientCallBack implements ProductFeignClient {
/**
* 熔断降级的方法
*/
public Product findById(Long id) {
Product product = new Product();
product.setProductName("feign调用触发熔断降级方法");
return product;
}
}

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

/**
* 声明需要调用的微服务名称
*
@FeignClient
*
* name : 服务提供者的名称
*
* fallback : 配置熔断发生降级方法
*
实现类
*/
@FeignClient(name="service-product",fallback = ProductFeignClientCallBack.class)
public interface ProductFeignClient {
/**
* 配置需要调用的微服务接口
*/
@RequestMapping(value="/product/{id}",method = RequestMethod.GET)
public Product findById(@PathVariable("id") Long id);
}

五、Hystrix的超时时间配置(超过此时间服务没有返回数据,进入降级方法)

hystrix:
command:
default:
execution:
isolation:
thread:
timeoutInMilliseconds: 3000 #默认的连接超时时间1秒,若1秒没有返回数据,自动的触发降级逻辑

最后

以上就是时尚康乃馨为你收集整理的21、Hystrix:基于feign调用的熔断配置的全部内容,希望文章能够帮你解决21、Hystrix:基于feign调用的熔断配置所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(40)

评论列表共有 0 条评论

立即
投稿
返回
顶部