OpenFeign的超时控制

OpenFeign的超时控制

本文将从以下几个方面记录自己学习的OpenFeign超时控制笔记

  1. 何为超时控制
  2. 有哪几类超时控制
  3. OpenFeign默认的超时控制规则
  4. 如何自定义超时控制

1.何为超时控制

通过实操加上官网介绍个人理解为当一个微服务调用另一个微服务时,发送请求后超过设定的时间未得到响应则OpenFeign自动停止请求的操作。

2. 有哪几类超时控制

通过官网看到有两类超时控制。
在这里插入图片描述
ConnectTimeout 防止由于服务器处理时间较长而阻塞调用方。

ReadTimeout 在连接建立时应用,并在返回响应时间过长时触发。

3.OpenFeign默认的超时控制规则

默认时连接超时和相应超时时间都为60秒。来验证一下:
在这里插入图片描述

在调用端打印调用前后的时间信息。如果有异常则会抓住异常提前结束
在这里插入图片描述
这里服务端设置睡眠时间62秒,模拟连接超时超过60秒钟。运行看看调用端是60秒之后响应异常内代码块,还是顺利等待了62秒后执行正常返回逻辑。

可以看到程序运行60秒后走了抓取异常的代码块,并未顺利返回,因此可以得出官方默认设置的响应超时时间为60秒钟。
在这里插入图片描述

4.如何自定义超时控制

根据官方文档,在yaml文件中配置相应参数即可自定义超时时间。
参数格式如下:

spring:cloud:openfeign:client:config:default:connectTimeout: 5000readTimeout: 5000loggerLevel: basic

通过上述参数将连接超时时间和响应超时时间都改为了5秒钟
修改上述yaml文件中的配置参数后,服务端继续保持睡眠62秒。验证效果:
在这里插入图片描述
可以看到并没有等60秒才响应,而是过5秒钟后就响应了异常,修改成功!
不仅可以修改超时时间,还可以指定哪个微服务的具体响应时间,配置如下:

spring:cloud:openfeign:client:config:${你的微服务注册的feignName}:connectTimeout: 5000readTimeout: 5000

例如我的如下:
在这里插入图片描述
我给这个微服务设置连接和相应超时时间都为10秒,同时设置了其他微服务模块5秒。
验证结果如下:
在这里插入图片描述
可以看到成功在10秒后相应!

上述为自己学习微服务期间的记录笔记,如有不足和错误,请及时指出。感谢大家支持!!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/660174.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

S参数定义

S11:端口2匹配时,端口1的反射系数; S22:端口1匹配时,端口2的反射系数; S12:端口1匹配时,端口2到端口1的反向传输系数; S21:端口2匹配时,端口1到端口2的正向传输系数; 对于互易网络,有:S12S21; 对于对称网络,有:S11S22 对于无耗网络,有:(S11)2(S12)21

基于ssm+vue开放式教学评价管理系统【ppt·代码·文档报告】

项目演示视频 项目名称:开放式教学评价管理系统 系统介绍:本系统是通过java的SSM框架来实现的,前端采用vue框架进行实现 管理员通过登录进入到系统操作界面,结合需求可以对个人信息进行在线修改维护,也可结合需求进行…

2024年这样做抖音小店,操作简单,起店稳定!

大家好,我是电商糖果 不少朋友说跟糖果抱怨过,说抖音小店越来越难做了。 平台的规则越来越多,商家运营店铺的时候,很容易出现违规预警。 糖果是2020年开始做的抖音小店,现在已经经营了多家小店。 实话实说确实比之…

java 远程debug

java -agentlib:jdwptransportdt_socket,servery,suspendn,address50050 -Xmx1536m -XX:HeapDumpOnOutOfMemoryError -XX:HeapDumpPath./ -jar ${JAR_NAME} >/dev/null 2>&1 &参数说明 -agentlib:jdwptransportdt_socket,servery,suspendn,address50050: 这个参数…

C语言中的趣味代码(五)

我想以此篇结束关于C语言的博客,因为在C语言拖得越久越不能给大家带来新的创作,在此我也相信大家对C语言已经有了一个新的认知。进入正题,在这一篇中我主要编一个“英语单词练习小程序”来给大家展开介绍,从测试版逐步改良&#x…

H3C无线控制器查看AP版本是否自动升级

全部网络--无线配置--AP管理--AP全局配置 如果开启了AP版本升级,那么当升级AC无线控制器的时候 , AP也会同时进行升级 命令行: [H3C]wlan auto-ap enable 自动注册 [H3C]wlan auto-persistent enable 自动固化 [Sysname] …

环境变量(进程第3篇)【Linux复习篇】

目录 1、什么是环境变量? 1)PATH环境变量 2)怎么查看所有的环境变量? 2、什么是命令行参数? 3、什么是本地变量和内建命令? 1、什么是环境变量? 环境变量是系统提供的多组name value的形式的…

构建下一代去中心化应用:基于BASE链的DApp开发

在区块链技术的快速发展中,去中心化应用(Decentralized Applications,DApps)已经成为了一个热门话题。这些应用通过区块链技术,实现了去中心化、透明、安全和不可篡改的特性,为用户提供了全新的体验和解决方…

大数据组件之Storm详解

Storm 是一个免费并开源的分布式实时计算系统,具有高容错性和可扩展性。它能够处理无边界的数据流,并提供了实时计算的功能。与传统的批处理系统相比,Apache Storm 更适合处理实时数据。 让我们深入了解一下 Storm: 1.Storm 简介…

idm下载速度慢解决办法 idm批量下载怎么用 idm优化下载速度 Internet Download Manager解决下载速度慢的方法教程

IDM (Internet Download Manager)是一款兼容性大,支持多种语言的下载管理软件,它可以自动检测并下载网页上的内容,这正是这一优点,使得它受到了广大用户的喜爱。但是在下载的过程中,我们会遇到idm下载速度慢怎么回事&a…

Spring - 7 ( 13000 字 Spring 入门级教程 )

一:Spring Boot 日志 1.1 日志概述 日志对我们来说并不陌生,我们可以通过打印日志来发现和定位问题, 或者根据日志来分析程序的运行过程,但随着项目的复杂度提升, 我们对日志的打印也有了更高的需求, 而不仅仅是定位排查问题 比如有时需要…

ASP.NET数据存储与交换系统设计

摘 要 该系统以Microsoft Visual Studio 2003作为开发工具,选用SQL Server 2000数据库来实现数据存储,并设计开发了一种基于B/S模式的数据存储与交换系统。该系统完成了用户注册管理、后台管理和用户空间管理功能;为每个用户提供了个人的存…