feign 默认是支持hystrix的, 但是在Spring - cloud Dalston 版本之后就默认关闭了, 因为不一定业务需求要用的到,

所以现在要使用首先得打开他,在yml文件加上如下配置:

feign:hystrix:enabled: true

加上配置之后降级方法怎么写呢?

@FeignClient(value = "SERVER-POWER",fallback = PowerServiceFallBack.class)
public interface PowerServiceClient {@RequestMapping("/power.do")public Object power(@RequestParam("name") String name);}

在feign客户端的注解上 有个属性叫fallback 然后指向一个类

PowerServiceFallBack 类:

@Component
public class PowerServiceFallBack implements PowerServiceClient {@Overridepublic Object power(String name) {return R.error("测试降级");}
}

这样子,方法降级就写好了

当然 可能你有这种需求, 需要拿到具体的错误信息, 那么可以这样写:

@Component
public class PowerServiceClientFallBackFactory implements FallbackFactory<PowerServiceClient> {@Overridepublic PowerServiceClient create(Throwable throwable) {return new PowerServiceClient() {@Overridepublic Object power(String name) {String message = throwable.getMessage();return R.error("feign降级");}};}
}

客户端指定一个fallbackFactory就好了

@FeignClient(value = "SERVER-POWER",fallbackFactory = PowerServiceClientFallBackFactory.class)
public interface PowerServiceClient {@RequestMapping("/power.do")public Object power(@RequestParam("name") String name);}

这个message 就是拿到的错误信息

至此, 就完成了feign与hystrix的整合

feign整合hystrix:相关推荐

  1. feign整合hystrix开启hystrix后启动报错_Spring Cloud进阶之路 | 六:断路器(hystrix)...

    ​熔断降级 微服务架构中,一般把一个大型的单个应用程序和服务拆分为数个甚至数十个的支持微服务,为了保证高可用,每个微服务都可能会部署集群. 即便如此,也无法保证100%可用.如遇程序问题.网络问题.不 ...

  2. OpenFeign 整合 Hystrix 实现服务降级

    Hystrix 的默认超时时间 :1s OpenFeign底层是使用 ribbon实现的 默认连接超时时间 : 1s 修改连接超时时间配置(OpenFeign): #设置feign客户端超时时间 ri ...

  3. hystrix 配置 不生效_12、Feign整合断路器Hystrix

    上编说了<RestTemplate+Ribbon整合断路器Hystrix>,这篇来看看如何Feign整合断路器Hystrix,Feign整合断路器Hystrix也是相对比较简单的.Feig ...

  4. spring Cloud中,解决Feign/Ribbon整合Hystrix第一次请求失败的问题?

    Spring Cloud中,Feign和Ribbon在整合了Hystrix后,可能会出现首次调用失败的问题,要如何解决该问题呢? 造成该问题的原因 Hystrix默认的超时时间是1秒,如果超过这个时间 ...

  5. Spring Cloud 2.x系列之Feign整合断路器监控Hystrix Dashboard

    SVN多版本库环境的搭建 OAuth 2.0是什么?看这篇文章就够了. 前端 Java Python等资源合集大放送 Ribbon可以整合整合断路器监控Hystrix Dashboard,Feign也 ...

  6. 实战系列-Spring Cloud微服务中三把利器Feign、Hystrix、Ribbon

    导语   在之前的分享中分享过关于Fegin的底层实现原理,以及Spring Cloud OpenFegin的启动原理.在这次的分享中主要总结一下Spring Cloud 微服务架构的三把利器.对于F ...

  7. SpringCloud微服务,euraka、feign、hystrix组件学习

    SpringCloud 1 eureka 1.1 eureka基本概念 eureka主要包含两个组件:Eureka Server 和 Eureka Client. eureka server(注册中心 ...

  8. Feign整合Sentinel实现容错

    Sentinel通过各种规则对资源进行保护,即进行服务容错.Feign使得调用远程服务就像调用本地服务一样简单.但是Feign在调用远程服务的时候,由于远程服务的原因,可能会产生异常.就需要进行相应的 ...

  9. java b2b2c shop 多用户商城系统源码- eureka集群整合hystrix框架

    继之前项目继续整合hystrix框架,hystrix框架为Netflix的模块,是一个容错框架.当用户访问服务调用者的时候,如果服务提供者出现异常导致无法正常返回出现请求超时的情况,而服务调用者并不知 ...

最新文章

  1. u8 采购到货单中的 业务类型 没有表字典,是系统预置 存入表也是文字: 普通采购 - 固定资产...
  2. 杭电1171(01背包求解)
  3. 鸟哥的Linux私房菜(基础篇)- 第十七章、程序管理与 SELinux 初探
  4. 【专栏原创]】忘掉一切,从用户场景出发——我在需求上犯过的错
  5. linux和哪些主机配了互信,linux主机互信
  6. 问题之mybatis-plus中的TableField、Tableld的区别
  7. Execute SQL Task 参数和变量的映射
  8. 【报告分享】2020年中国5G经济报告--助力新时代高质量发展.pdf(附下载链接)...
  9. java批量查询导致堆内存不足,带有嵌套聚合的Elasticsearch查询导致内存不足
  10. 图像局部特征(十七)--DenseFeature
  11. 题目1088:剩下的树(小端快排+大端判断边界)
  12. Atitit uri url格式规范与解析器 .URIparser 理解URI和URL的区别,我们引入URN这个概念。 URI = Universal Resource Identifier 统一资
  13. Windows/Linux模拟键盘鼠标操作
  14. Computer:编程入门的简介相关的一些概念解释之详细攻略
  15. 服务器共享文件打开未响应,win7共享文件夹会话未响应
  16. 0基础怎么画出好看的水彩画美术集水彩教程入门级教程
  17. 商城源码+分销版+破j版+企业版+虚拟商品+第三方对接
  18. 解决“远程会话已断开连接,因为访问被拒绝导致许可证存储的创建失败,请使用提升的权限运行远程桌面客户端”问题...
  19. java计算机毕业设计疫情期间高校师生外出请假管理系统录屏源代码+系统+数据库+lw文档
  20. 谈个人网站发展及赚钱

热门文章

  1. 在 iOS 或者 Mac OS X 中将 NSDictionary 映射为本地对象的方法
  2. myeclipse中ALT+/怎么不管用了
  3. day13-(事务mvc反射补充)
  4. 移动端页面适配解决方案
  5. IDEA将Maven项目中src源代码下的xml配置文件编译进classes
  6. 【bzoj4195】[Noi2015]程序自动分析 离散化+并查集
  7. jquery ajax请求 清除缓存
  8. Linux CentOS 7 YouCompleteMe相关配置。
  9. bfc和haslayout
  10. Ubuntu分别用ibus和scim安装五笔