SpringCloudAlibaba整合服务调用工具OpenFeign
一 OpenFeign简介
OpenFeign是一个轻量级的HTTP远程调用框架,可以以JAVA接口注解的方式调用HTTP请求,并且集成了Ribbon能自动实现客户端的负载均衡;
二 SpringCloudAlibaba整合OpenFeign
1、导入Pom依赖
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId> <version>2.2.6.RELEASE</version> </dependency>
2、启动类添加注解 @EnableFeignClients
@SpringBootApplication @EnableFeignClients public class SpringcloudalibabaConsumerApplication { public static void main(String[] args) { SpringApplication.run(SpringcloudalibabaConsumerApplication.class, args); } }
3、生产者Feign客户编码
@FeignClient("springcloudalibaba-producer") public interface ProducerFeign { @RequestMapping("/getPort") String myGetPort(); }
Feign底层原理(代理模式):
(1)、通过反射获取ProducerFeign 类上@FeignClient("springcloudalibaba-producer")服务名称;(服务名称,既获取服务调用接口的地址)
(2)、获取当前调用方法名称上@RequestMapping("/getPort");(既获取服务接口调用方法)
4、消费者服务调用
@RestController public class MyConsumerController { @Autowired private ProducerFeign producerFeign; @RequestMapping("/myGetPort") public String myGetPort(){ return producerFeign.myGetPort(); } }
三 测试访问
访问地址 既轮询访问8080和8081端口