Spring Cloud学习笔记(四)-Feign的使用及负载均衡

说明:本文仅作为本人学习<<深入理解Spring Cloud与微服务构建>>一书的学习笔记,所有代码案例及文字描述均参考该书,不足之处,请留言指正,不胜感激.
  以Spring Cloud作为微服务框架的项目中,我们项目与项目之间的调度大多是使用Feign来进行的.Feign的使用非常简单,首先我们在消费者服务引入Feign的起步依赖spring-cloud-starter-feign,如下:
这里写图片描述
消费者服务的配置文件如下:
这里写图片描述
然后在消费者的启动类上加上@EnableFeignClients开启Feign Client的功能,代码如下:
这里写图片描述
小结一下,开启Feign Client功能只需要两步:一.引入Feign所需要的依赖,二.在启动类上加上@EnableFeignClients.
下面我们来实现一个简单的Feign Client:
新建一个接口ProducerServerFeign,并加上@FeignClient,如下:
这里写图片描述
其中value为其他服务的服务名,FeignConfig为Feign的配置类,如下:
这里写图片描述
然后在控制层调用即可:
这里写图片描述
最后我们开启一个Eureka服务,两个生产者服务,以及一个消费者服务,然后在浏览器上请求:http://localhost:8764/customer/hiByFeign,浏览器会轮流出现如下内容:
hi,this is 8762
hi,this is 8763
我们发现不仅调用成功,而且Feign Client还默认具有负载均衡能力,查看起步依赖spring-cloud-starter-feign的pom文件,如下所示:
这里写图片描述
其中默认引入了Ribbon(负载均衡)Hystrix(熔断器)的依赖.

猜你喜欢

转载自blog.csdn.net/fly_zhaohy/article/details/80766062