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超时时间内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • maven项目下solr和spring的整合配置详解

    maven项目下solr和spring的整合配置详解

    这篇文章主要介绍了maven项目下solr和spring的整合配置详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-11-11
  • Spring Boot实现对文件进行压缩下载功能

    Spring Boot实现对文件进行压缩下载功能

    在Web应用中,文件下载功能是一个常见的需求,特别是当你需要提供用户下载各种类型的文件时,本文将演示如何使用Spring Boot框架来实现一个简单而强大的文件下载功能,需要的朋友跟随小编一起学习吧
    2023-09-09
  • Jmeter测试时遇到的各种乱码问题及解决

    Jmeter测试时遇到的各种乱码问题及解决

    这篇文章主要介绍了Jmeter测试时遇到的各种乱码问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • Spring中Bean的加载与SpringBoot的初始化流程详解

    Spring中Bean的加载与SpringBoot的初始化流程详解

    这篇文章主要介绍了Spring中Bean的加载与SpringBoot的初始化流程详解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-11-11
  • java实现简单的学生信息管理系统代码实例

    java实现简单的学生信息管理系统代码实例

    这篇文章主要介绍了java实现简单的学生信息管理系统,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • 深入探究如何使用Java编写MapReduce程序

    深入探究如何使用Java编写MapReduce程序

    MapReduce是一种用于处理大规模数据集的并行编程模型,其特点高效性和可扩展性,在本文中,我们将深入了解MapReduce,并使用Java编写一个简单的MapReduce程序,需要的朋友可以参考下
    2023-05-05
  • 详解Java8中Optional的常见用法

    详解Java8中Optional的常见用法

    Opitonal是java8引入的一个新类,目的是为了解决空指针异常问题。本文将通过示例为大家详细讲讲Optional的常见用法,需要的可以参考一下
    2022-09-09
  • java分类树,我从2s优化到0.1s

    java分类树,我从2s优化到0.1s

    这篇文章主要介绍了java分类树,我从2s优化到0.1s的相关资料,需要的朋友可以参考下
    2023-05-05
  • java生成字母数字组合的随机数示例 java生成随机数

    java生成字母数字组合的随机数示例 java生成随机数

    这篇文章主要介绍了java生成字母数字组合的随机数的示例,大家参考使用吧
    2014-01-01
  • Spring Cloud微服务使用webSocket的方法

    Spring Cloud微服务使用webSocket的方法

    WebSocket在现代浏览器中的应用已经算是比较普遍了,在某些业务场景下,要求必须能够在服务器端推送消息至客户端,本文给大家介绍Spring Cloud微服务使用webSocket的方法,感兴趣的朋友一起看看吧
    2021-06-06

最新评论