spring cloud hystrix 超时时间使用方式详解

 更新时间:2021年01月04日 14:27:14   作者:勇于探索  
这篇文章主要介绍了spring cloud hystrix 超时时间使用方式,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

我们在使用后台微服务的时候,各个服务之前会有很多请求和交叉业务。这里会引起雪崩、超时等异常处理。SpringCloud Hystrix服务降级、容错机治理使 hystrix 有很好的支持,引入后实现断路器功能。

1:pom 引入jar包

<dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
      </dependency>

2:添加注解

Application中增加 @EnableCircuitBreaker 开启hystrix功能

3:配置文件配置

注意:feign中的hystrix的enabled属性要设置true

hystrix:
 command:
  transferApprove: # 这里是要设置超时时间的方法,如新增其他方法需要增加此节点信息。
   execution:
    isolation:
     thread:
      timeoutInMilliseconds: 6000 #默认连接超时时间是1秒

4:增加代码

  代码注意fastOrBatchFallback的出参和入参要和设置了@HystrixCommand注解方法一致,否则会抛出异常。

 @Override
  @HystrixCommand(fallbackMethod = "fastOrBatchFallback")
  public ResultModel transferApprove(TransferApproveDto dto) {
    log.info("调动流程审批:{}", dto);
    if (StringUtils.isEmpty(dto.getOperatorId())
        || StringUtils.isEmpty(dto.getFlowNos())
        || StringUtils.isEmpty(dto.getOperatorId())) {
      return ResultModel.fail(-1, "参数异常");
    }
  }
 
 
  public ResultModel fastOrBatchFallback(TransferApproveDto transferApproveDto) {
    log.info("请求ps服务超时,请稍后再试.入参:{}", GsonUtils.toJsonString(transferApproveDto));
    return ResultModel.fail("请求服务超时,请稍后再试", "ps服务超时,请稍后再试");
  }

5: 待解决和研究问题? 

hystrix 执行了Fallback之后是否继续走其他逻辑,目前可知的是继续走其他逻辑,如果让它不触发后序的逻辑怎么配置?

这里先打一个问号,欢迎大家一起讨论和解决。

到此这篇关于spring cloud hystrix 超时时间使用方式的文章就介绍到这了,更多相关spring cloud超时时间内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • springBoot集成Elasticsearch 报错 Health check failed的解决

    springBoot集成Elasticsearch 报错 Health check failed的解决

    这篇文章主要介绍了springBoot集成Elasticsearch 报错 Health check failed的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08
  • 教你怎么用Springboot自定义Banner图案

    教你怎么用Springboot自定义Banner图案

    今天给大家带来的是Java的相关知识,文章围绕着怎么用Springboot自定义Banner图案展开,文中有非常详细的介绍及代码示例,需要的朋友可以参考下
    2021-06-06
  • Spring boot外部配置(配置中心化)详解

    Spring boot外部配置(配置中心化)详解

    这篇文章主要给大家介绍了关于Spring boot外部配置(配置中心化)的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2017-12-12
  • Java GUI进阶之流式布局管理器FlowLayout专项精讲

    Java GUI进阶之流式布局管理器FlowLayout专项精讲

    FlowLayout-流式布局管理器,按水平方向依次排列放置组件,排满一行,换下一行继续排列。排列方向(左到右 或 右到左)取决于容器的componentOrientation属性
    2022-04-04
  • 举例讲解Java中的多线程编程

    举例讲解Java中的多线程编程

    这篇文章主要介绍了举例讲解Java中的多线程编程,线程是Java学习中的重要知识,需要的朋友可以参考下
    2015-09-09
  • SpringCloud笔记(Hoxton)Netflix之Ribbon负载均衡示例代码

    SpringCloud笔记(Hoxton)Netflix之Ribbon负载均衡示例代码

    这篇文章主要介绍了SpringCloud笔记HoxtonNetflix之Ribbon负载均衡,Ribbon是管理HTTP和TCP服务客户端的负载均衡器,Ribbon具有一系列带有名称的客户端(Named Client),对SpringCloud Ribbon负载均衡相关知识感兴趣的朋友一起看看吧
    2022-06-06
  • java使用正则表达式判断邮箱格式是否正确的方法

    java使用正则表达式判断邮箱格式是否正确的方法

    这篇文章主要介绍了java使用正则表达式判断邮箱格式是否正确的方法,涉及java正则表达式及字符串的相关操作技巧,需要的朋友可以参考下
    2015-07-07
  • springboot接收日期类型参数的操作方法

    springboot接收日期类型参数的操作方法

    如果使用Get请求,直接使用对象接收,则可以使用@DateTimeFormat注解进行格式化,本文重点给大家介绍springboot接收日期类型参数的方法,感兴趣的朋友一起看看吧
    2024-02-02
  • java教学笔记之对象的创建与销毁

    java教学笔记之对象的创建与销毁

    面向对象的编程语言使程序能够直观的反应客观世界的本来面目,并且使软件开发人员能够运用人类认识事物所采用的一般思维方法进行软件开发,是当今计算机领域中软件开发和应用的主流技术。
    2016-01-01
  • java插入排序和希尔排序实现思路及代码

    java插入排序和希尔排序实现思路及代码

    这篇文章主要介绍了插入排序和希尔排序两种排序算法,文章通过代码示例和图解详细介绍了这两种排序算法的实现过程和原理,需要的朋友可以参考下
    2025-03-03

最新评论