OpenFeign的使用
2022/1/19 6:34:34
本文主要是介绍OpenFeign的使用,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
OpenFeign 可让客户端向服务端发送请求
OpenFeign 可用于替代 Ribbon+RestTemplate。
OpenFeign 需要定义一个接口使用,默认仍是轮询算法
OpenFeign的配置
依赖
<!--openfeign--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId> </dependency>
yaml中不需要做额外配置,如果是集群环境的话正常连接集群即可
给出示例:
OpenFeign的使用
通过客户端向服务端发送请求,下面以此为例。
在启动类中添加注解
Service层中添加接口
该接口的作用是,只要调用了
getPaymentById()
方法,客户端就向cloud-payment-service
服务器发送/payment/get/{id}
请求
controller层
controller 没啥区别,直接使用函数即可
超时控制
OpenFeign默认等待时间为1s,如果超过1s就会直接报错。
但对于一些耗时长的业务而言1s是不够的,我们可以在yaml文件里手动设置OpenFeign的等待时间。
单位ms
#设置feign客户端超时时间(OpenFeign默认支持ribbon) ribbon: #指的是建立连接所用的时间,适用于网络状况正常的情况下,两端连接所用的时间 ReadTimeout: 5000 #指的是建立连接后从服务器读取到可用资源所用的时间 ConnectTimeout: 5000
日志打印
需要注入bean、配置yaml
config类如下:
FULL
为日志级别
@Configuration public class FeignConfig { @Bean Logger.Level feignLoggerLevel() { return Logger.Level.FULL; } }
日志级别如下:
NONE:默认的,不显示任何日志; BASIC:仅记录请求方法、URL、响应状态码及执行时间; HEADERS:除了 BASIC 中定义的信息之外,还有请求和响应的头信息; FULL:除了 HEADERS 中定义的信息之外,还有请求和响应的正文及元数据。
yaml配置
以debug方式显示PaymentFeignService
类的日志信息
效果如图
这篇关于OpenFeign的使用的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南