返回顶部
首页 > 资讯 > 精选 >Spring Cloud中各组件超时的示例分析
  • 103
分享到

Spring Cloud中各组件超时的示例分析

springcloud 2023-05-30 19:05:00 103人浏览 独家记忆
摘要

这篇文章给大家分享的是有关spring cloud中各组件超时的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Ribbon的超时全局设置:ribbon:ReadTimeout: 60000Con

这篇文章给大家分享的是有关spring cloud中各组件超时的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

Ribbon的超时

全局设置:

ribbon:ReadTimeout: 60000ConnectTimeout: 60000

局部设置:

service-id:ribbon:ReadTimeout: 1000ConnectTimeout: 1000

其中,service-id 是Ribbon所使用的虚拟主机名,一般和Eureka Server上注册的服务名称一致,即:与spring.application.name 一致。

Feign的超时

从Spring Cloud Edgware开始,Feign支持使用属性配置超时:

feign: client: config:  feignName:  connectTimeout: 5000  readTimeout: 5000

对于老版本,可以写个feign.Request.Options ,参考:org.springframework.cloud.netflix.feign.ribbon.FeignRibbonClientAutoConfiguration#feignRequestOptions 的写法即可。

RestTemplate的超时

一些时,我们可能使用了RestTemplate,例如

@Bean@LoadBalancedpublic RestTemplate restTemplate() {return new RestTemplate();}

此时,超时可使用如下方式设置:

@Bean@LoadBalancedpublic RestTemplate restTemplate() {SimpleClientHttpRequestFactory simpleClientHttpRequestFactory = new SimpleClientHttpRequestFactory();simpleClientHttpRequestFactory.setConnectTimeout(1000);simpleClientHttpRequestFactory.setReadTimeout(1000);return new RestTemplate(simpleClientHttpRequestFactory);}

Zuul的超时

Zuul的超时比较复杂,因为Zuul整合了Ribbon、Hystrix。下面分两种情况讨论:

如果Zuul的路由使用了Ribbon

那么:Zuul的超时则与Ribbon、Hystrix相关,此时Zuul的超时可以配置类似如下:

hystrix: command: default:  execution:  isolation:   thread:   timeoutInMilliseconds: 1000ribbon: ReadTimeout: 1000 ConnectTimeout: 1000

代码解析:此种情况下,Zuul转发所使用的过滤器是org.springframework.cloud.netflix.zuul.filters.route.RibbonRoutingFilter ,在这个过滤器中,整合了Hystrix以及Ribbon。

如果Zuul的路由未使用Ribbon

例如:Zuul的路由配置如下:

zuul: routes: user-route:     # 该配置方式中,user-route只是给路由一个名称,可以任意起名。  url: http://localhost:8000/ # 指定的url  path: /user/**    # url对应的路径。

那么,此时Zuul的超时只与如下两个配置有关:

zuul: host: Socket-timeout-millis: 10000 connect-timeout-millis: 2000

代码解析:直接配置URL路由的方式,用不上Ribbon,也用不上Hystrix,Zuul转发所使用的过滤器是org.springframework.cloud.netflix.zuul.filters.route.SimpleHostRoutingFilter ,在这个过滤器中,Zuul使用Apache HttpClient进行转发。

在现实场景中,有时候可能两种路由方式配合使用,因此,建议大家配置以上所有属性。

Hystrix的超时

hystrix: command: default:  execution:  timeout:   enabled: true  isolation:   thread:   timeoutInMilliseconds: 1000

如上,Hystrix的默认超时时间是1秒。默认开启超时机制。如需关闭Hystrix的超时,可将xxx.enabled设置为false。

Tips

如有组件跟Hystrix配合使用,一般来讲,建议Hystrix的超时 > 其他组件的超时,否则将可能导致重试特性失效。

感谢各位的阅读!关于“Spring Cloud中各组件超时的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

--结束END--

本文标题: Spring Cloud中各组件超时的示例分析

本文链接: https://lsjlt.com/news/220789.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Spring Cloud中各组件超时的示例分析
    这篇文章给大家分享的是有关Spring Cloud中各组件超时的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Ribbon的超时全局设置:ribbon:ReadTimeout: 60000Con...
    99+
    2023-05-30
    springcloud
  • Spring Cloud重试机制与各组件重试的示例分析
    这篇文章将为大家详细讲解有关Spring Cloud重试机制与各组件重试的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。SpringCloud重试机制配置首先声明一点,这里的重试并不是报错以后的重...
    99+
    2023-05-30
    springcloud
  • Spring Cloud Config的示例分析
    这篇文章将为大家详细讲解有关Spring Cloud Config的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在我们了解spring cloud config之前,我可以想想一个配置中心提供的...
    99+
    2023-06-05
  • Spring Cloud Bus消息的示例分析
    这篇文章将为大家详细讲解有关Spring Cloud Bus消息的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。概念我们使用配置中心时,当配置中心的配置发生了变化,我们就要发送一个post请求给客...
    99+
    2023-06-25
  • Spring Cloud中服务网关Zuul的示例分析
    这篇文章主要介绍Spring Cloud中服务网关Zuul的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!在微服务架构中,需要几个关键的组件,服务注册与发现、服务消费、负载均衡、断路器、智能路由、配置管理等,...
    99+
    2023-06-19
  • Spring Cloud Zuul中路由配置的示例分析
    这篇文章将为大家详细讲解有关Spring Cloud Zuul中路由配置的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。首先我们来回忆一下配置路由规则的那两行代码:zuul.routes.api-...
    99+
    2023-05-30
    spring cloud zuul
  • Spring Cloud中Zuul重试机制的示例分析
    小编给大家分享一下Spring Cloud中Zuul重试机制的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!具体内容如下:开启Zuul功能通过源码了解Zu...
    99+
    2023-05-30
    springcloud zuul
  • Spring Cloud中API网关服务Zuul的示例分析
    这篇文章主要为大家展示了“Spring Cloud中API网关服务Zuul的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Spring Cloud中API网关服务Zuul的示例分析”这篇...
    99+
    2023-05-30
    spring cloud zuul
  • 服务网关Spring Cloud Zuul的示例分析
    这篇文章主要为大家展示了“服务网关Spring Cloud Zuul的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“服务网关Spring Cloud&nbs...
    99+
    2023-06-29
  • Spring Cloud Zuul服务网关的示例分析
    这篇文章将为大家详细讲解有关Spring Cloud Zuul服务网关的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。有了Eureka服务注册发现、Hystrix断路器、Ribbon服务调用负载均...
    99+
    2023-05-30
    spring cloud zuul
  • JavaScript中数组各种操作的示例分析
    这篇文章主要介绍JavaScript中数组各种操作的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!声明一个数组原来是如下声明:var s = new Array();但是 现...
    99+
    2024-04-02
  • Vue.js中组件的示例分析
    这篇文章将为大家详细讲解有关Vue.js中组件的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。什么是组件?组件使我们能够将 复杂的 应用程序分解成小块。例如,典型...
    99+
    2024-04-02
  • Vue中组件的示例分析
    这篇文章将为大家详细讲解有关Vue中组件的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。<body>    <div id=&q...
    99+
    2023-06-25
  • Spring Cloud中服务注册与发现Eureka的示例分析
    这篇文章将为大家详细讲解有关Spring Cloud中服务注册与发现Eureka的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、spring cloud简介spring cloud 为开发人员...
    99+
    2023-06-19
  • Angular中组件@Component的示例分析
    这篇文章主要介绍Angular中组件@Component的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1. 概述组件是 Angular 应用的主要构造块。每个组件包括如下部分:一个 HTML 模板,用于声明...
    99+
    2023-06-15
  • Spring-cloud之sleuth服务链路跟踪的示例分析
    这篇文章主要介绍了Spring-cloud之sleuth服务链路跟踪的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、简介Add sleuth to the cla...
    99+
    2023-05-30
  • angular10组件的示例分析
    这篇文章主要介绍了angular10组件的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。组件构成要素html模板typescript...
    99+
    2024-04-02
  • Vue组件的示例分析
    这篇文章主要介绍了Vue组件的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Vue实例项目启动过程看一下现在我们的项目,想想整个项目...
    99+
    2024-04-02
  • dubbo中zookeeper请求超时问题的示例分析
    这篇文章主要介绍dubbo中zookeeper请求超时问题的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!进入正题:先上我dao层配置:上db.properties配置。上S...
    99+
    2024-04-02
  • Spring的示例分析
    这篇文章将为大家详细讲解有关Spring的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。WHY在诞生之初,创建Spring的主要目的是用来替代更加重量级的企业级Java技术,尤其是EJB。相对于E...
    99+
    2023-05-30
    spring
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作