在SpringCloud教程-03:负载均衡(Ribbon)一文中,我们介绍了如何使用Ribbon来实现客户端的负载均衡,在使用Ribbon时,一般会用RestTemplate来实现对远程服务的调用,但是这依旧不够简洁,每次在使用RestTemplate去远程调用时,还是得写一些模板化的东西。Spring Cloud Feign,在此基础上做了更进一步的封装,我们只需要创建一个接口,并使用注解的方式配置一下,就可以完成对服务提供方的绑定和调用。
本文介绍如何使用Feign实现客户端的负载均衡,主要分为以下几个步骤:
1.创建项目
新建一个Springboot项目feign_server1。
2.引入依赖
3.修改配置文件
4.添加启动注解
启动类添加@EnableFeignClients,开启Feign的负载均衡功能
5.跨服务调用
写个简单的接口方法来调用。
5.1controller
5.2service
通过@FeignClient来指定我们调用哪个服务,前面启动了两个服务,都为company-server,feign会通过服务名来调用服务。
6.启动项目,测试
启动项目,然后访问接口http://localhost:8015/getCompany?id=36,可以看到服务会自动负载到两台服务上。