irpas技术客

OpenFeign简介_毛胖娃儿_openfeign

网络 577

openFeign概念:

OpenFeign?是 Spring Cloud 家族的一个成员, 它最核心的作用是为 HTTP 形式的 Rest API 提供了非常简洁高效的 RPC 调用方式

使用方式:

调用者中加入依赖:

? ? ?

<properties> <java.version>1.8</java.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <spring-boot.version>2.3.7.RELEASE</spring-boot.version> <spring-cloud-alibaba.version>2.2.2.RELEASE</spring-cloud-alibaba.version> <spring-cloud.version>Hoxton.SR9</spring-cloud.version> </properties> ... ?? ??? ?<dependency> ? ? ? ? ? ? <groupId>org.springframework.cloud</groupId> ? ? ? ? ? ? <artifactId>spring-cloud-starter-openfeign</artifactId> ? ? ? ? </dependency> ... ??? ??? <dependency> ? ? ? ? ? <groupId>org.springframework.cloud</groupId> ? ? ? ? ? <artifactId>spring-cloud-dependencies</artifactId> ? ? ? ? ? <version>${spring-cloud.version}</version> ? ? ? ? ? <type>pom</type> ? ? ? ? ? <scope>import</scope> ?? ??? ??</dependency>

接口类上:@FeignClient("被调用的服务器名")

启动类上:@EnableFeignClients

然后在需要使用的地方@Resource注入

OpenFeign的用途及实现原理

openfeign的用途:服务发现,负载均衡,服务调用

openfeign的实现原理:基于@EnableFeignClients 将所有被@FeignClient注解的类 注册到容器中。当这些被@FeignClient注解的类被调用时会创建一个动态代理的对象为我们创建被调用类的实例,然后都会被统一转发给 Feign 框架所定义的一个 InvocationHandler , 由该 Handler 完成后续的 HTTP 转换, 发送, 接收, 翻译HTTP响应的工作。


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,会注明原创字样,如未注明都非原创,如有侵权请联系删除!;3.作者投稿可能会经我们编辑修改或补充;4.本站不提供任何储存功能只提供收集或者投稿人的网盘链接。

标签: #OpenFeign #Spring #Cloud #家族的一个成员 #它最核心的作用是为 #HTTP #形式的