springCloud 学习笔记3 feign 实现客户端负载均衡
2019-01-09 08:51
656 查看
版权声明:尊重原创 https://blog.csdn.net/higher_gao/article/details/86129838
Feign 概述
Feign是Netflix开发的声明式、模板化的HTTP客户端, Feign可以帮助我们更快捷、优雅地调用HTTP API。
Spring Cloud Feign帮助我们定义和实现依赖服务接口的定义。在Spring Cloud feign的实现下,只需要创建一个接口并用注解方式配置它,即可完成服务提供方的接口绑定,简化了在使用Spring Cloud Ribbon时自行封装服务调用客户端的开发量
Feign的使用步骤
1:导入依赖
2:编辑接口
3:在启动类上增加注解
4:项目属性配置
5:业务代码,服务消费者调用服务提供者的服务
导入依赖
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId> </dependency>
feign 的应用接口编辑
//polices 从注册中心中获取服务 @FeignClient(name = "polices") public interface UserFeignClient { @RequestMapping(value = "/call/{id}", method = RequestMethod.GET) public String call (@PathVariable("id") Long id); }
启动类上的注解
@SpringBootApplication @EnableEurekaClient//eurea客户端注解 @EnableFeignClients//fegin客户端注解 public class FirstFeignApplication { public static void main(String[] args) { SpringApplication.run(FirstFeignApplication.class, args); } }
配置文件application.yml编写
server: port: 7000 spring: application: name: first_feign eureka: client: eureka-server-url: defautZone: http://localhost:8761/eureka/
业务代码,服务消费者调用服务提供者的服务
@Controller public class myController { //注入Feign接口 @Autowired private UserFeignClient userFeignClient; @GetMapping("/router/{id}") @ResponseBody public String router(@PathVariable("id") Long id ) { System.out.println("rout..."); // RestTemplate tpl = getRestTemplate(); // String json = tpl.getForObject("http://polices/call/1", String.class); return userFeignClient.call(id); } public UserFeignClient getUserFeignClient() { return userFeignClient; } public void setUserFeignClient(UserFeignClient userFeignClient) { this.userFeignClient = userFeignClient; } }
相关文章推荐
- 详解spring cloud中使用Ribbon实现客户端的软负载均衡
- spring cloud Ribbon 客户端负载均衡的学习(1)
- 客户端实现负载均衡:springCloud Ribbon的使用
- Spring Cloud 入门教程(五): Ribbon实现客户端的负载均衡
- Spring Cloud Ribbon实现客户端负载均衡的方法
- Spring Cloud+Eureka+Ribbon实现客户端负载均衡
- Spring Cloud 入门教程(五): Ribbon实现客户端的负载均衡
- Spring Cloud Ribbon实现客户端负载均衡的示例
- Spring Cloud+docker实现微服务负载均衡
- Spring Cloud 客户端负载均衡之Ribbon(三)
- Spring Cloud微服务开发笔记5——Ribbon负载均衡策略规则定制
- Thrift学习笔记(6)--Spring集成Thrift,实现服务端和客户端代理
- SpringCloud与Consul集成实现负载均衡功能
- Spring Cloud(二)客户端负载均衡Ribbon
- springcloud学习笔记三:利用Feign编写客户消费端
- spring cloud 之 客户端负载均衡Ribbon深入理解
- spring-cloud-feign之spring-cloud-1.3.4(Dalston.SR3)-boot(1.5.6) 学习笔记
- 04.Spring Cloud学习笔记之客户端负载均衡组件Ribbon
- SpringCloud客户端负载均衡Ribbon
- springCloud-Ribbon之客户端负载均衡