SpringCloud声明式调用Fegin


我们先搭建一个cloud工程,注意每个工程都实现Eureka服务发现。 image.png

1、注册中心(Eureka三节点,两两注册)

具体实现可以参照前面的文章Eureka搭建高可用服务注册中心

image.png

2、两个一样的测试服务提供者

image.png

其实可以用一个module,然后启动不同的application.yml就可以了,这里为了看出来软负载的效果,用两个一样的service来演示。其中指定spring.application.name的值都为service-1。在Eureka的注册界面显示为,

image.png

Fegin的接口调用

Feign可以理解为一种软负载均衡,和Ribbon一样,也是用于服务之间内部调用的负载处理。区别在用调用方式上面,Feign自己做了很好的HTTP封装,调用服务接口就像调用本地方法一样,避免了调用目标restful服务时不断的解析封装json数据的繁琐。Feign是spring cloud 整合Ribbon和Eureka提供的负载均衡的HTTP客户端,使用方便简洁。

声明是调用,Fegin的调用要简洁的多,只需要从Eureka找到对应的注册服务类,暴露成接口即可,然后就可以在自己的controller里面使用了

image.png

image.png

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×