做宝宝衣服的网站,建网站公司 快云,齐鲁石化建设公司官网,请列举常见的网站推广方法前言
本节内容主要介绍一下SpringCloud组件中微服务调用组件openfeign的一些高级特性的用法以及一些常用的开发配置#xff0c;如openfeign的超时控制配置、openfeign的重试机制配置、openfeign集成高级的http客户端、openfeign的请求与响应压缩功能#xff0c;以及如何开启…前言
本节内容主要介绍一下SpringCloud组件中微服务调用组件openfeign的一些高级特性的用法以及一些常用的开发配置如openfeign的超时控制配置、openfeign的重试机制配置、openfeign集成高级的http客户端、openfeign的请求与响应压缩功能以及如何开启openfeign的日志查看功能便于我们更好的定位问题等。关于微服务集成开发openfeign的实战内容可参考作者的往期博客内容。
正文
OpenFeign的日志配置
①在openfeign的配置类中添加日志的bean配置
Bean
public Logger.Level feignLoggerLevel() {return Logger.Level.FULL;
} ②在调用方的配置文件applicaton.yml中配置openfeign的接口日志这里配置的是debug级别的日志 ③ 启动微服务项目查看openfeign的接口调用日志 OpenFeign的超时配置
①openfeign超时的全局配置这里设置为5秒钟如果没有配置系统默认配置是60秒
Bean
public Request.Options options() {return new Request.Options(60, TimeUnit.SECONDS, 60, TimeUnit.SECONDS, true);
} ②在接口提供方打断点模拟接口响应超时通过日志我们可以确认超时配置是否已经生效 ③在调用方的配置文件application.yml中针对不同微服务配置超时时间该配置优先级高于全局的配置
feign:client:config:aiyundun-manager: #服务提供方connectTimeout: 3000 # 连接超时时间单位为毫秒readTimeout: 3000 # 读取超时时间单位为毫秒 ④局部配置测试结果 OpenFeign的请求重试机制设置
①在配置类中配置重试策略如果不配置默认是不开启重试策略
Bean
public Retryer myRetryer()
{//最大请求次数为3(12)初始间隔时间为100ms重试间最大间隔时间为1sreturn new Retryer.Default(500,1,3);
} ②查看测试日志间隔3秒钟会尝试重复调用尝试调用了三次 OpenFeign的请求响应的压缩功能配置
①在调用方配置文件application.yml中配置openfeign请求和响应的压缩功能
feign:client:config:aiyundun-manager: #服务提供方connectTimeout: 3000 # 连接超时时间单位为毫秒readTimeout: 3000 # 读取超时时间单位为毫秒compression:request:enabled: truemin-request-size: 2048 #最小触发压缩的大小mime-types: text/xml,application/xml,application/json #触发压缩数据类型response:enabled: true ②查看openfeign调用日志 OpenFeign替换默认的http请求客户端
①添加httpclient5客户端maven依赖配置
!-- httpclient5--
dependencygroupIdorg.apache.httpcomponents.client5/groupIdartifactIdhttpclient5/artifactIdversion5.3/version
/dependency
!-- OpenFeign 依赖 --
dependencygroupIdio.github.openfeign/groupIdartifactIdfeign-core/artifactIdversion11.5/version
/dependency
dependencygroupIdio.github.openfeign/groupIdartifactIdfeign-httpclient/artifactIdversion11.5/version
/dependency ②在调用方的application.yml中开启httpclient客户端默认就是开启状态可跳过此步骤 ③ 查看是否替换成功 结语
至此关于openfeign的高级特性实战内容介绍到这里就结束了我们下期见。。。。。。