有关Spring Cloud Alibaba之前写过五篇文章,这篇也是在上面项目的基础上进行开发。
Spring Cloud Alibaba(2)---RestTemplate微服务项目
Spring Cloud Alibaba(3)---Nacos概述
Spring Cloud Alibaba(4)---Nacos(注册中心)
Spring Cloud Alibaba(5)---Nacos(配置中心)
Spring Cloud Alibaba(6)---Nacos持久化Mysql8.0版本
Spring Cloud Alibaba(7)---docker-compose搭建nacos1.4.0集群
因为Feign是由Netflix开发出来,它不属于spring cloud alibaba 的组件。
一、概念
一个成熟的微服务集群,内部调用必然依赖一个好的RPC框架,比如:基于http协议的Feign,基于私有Tcp协议的dubbo。本文内容介绍Feign。
1、什么是Feign
Feign是由Netflix开发出来的另外一种实现负载均衡的开源框架,它封装了Ribbon和RestTemplate,实现了WebService的 面向接口编程,进一步的减低了项目的耦合度,
因为它封装了Riboon和RestTemplate,所以它具有这两种框架的功能,可以 实现负载均衡和Rest调用。
2、为什么需要Feign
之前已经创建好了订单微服务,商品微服务,这两个微服务是互相隔离的,那么微服务和微服务之间如何互相调用呢?
显然两个微服务都可以采用http通信,之前也通过代码来实现restTemplate进行互相访问,但是这种方式对参数传递和使用都不是很方便,我们需要配置请求head、body,
然后才能发起请求。获得响应体后,还需解析等操作,十分繁琐。采用Feign进行服务之间的调用,可以简化调用流程,真正感觉到是在同一个项目中调用另一个类的方法的欢快感。
3、Feign优点
1、Feign旨在使编程java Http客户端变得更容易。
2、服务调用的时候融合了 Ribbon 技术,所以也支持负载均衡作用。

本文详细介绍了Spring Cloud Alibaba中的Feign服务调用,包括Feign的概念、为什么需要Feign以及它的优点。通过实际项目搭建,展示了如何在Spring Boot应用中配置并使用Feign进行微服务间的调用,同时给出了负载均衡的示例,包括默认的轮询策略和修改为随机策略的效果。最后提到了后续将要讨论的Sentinel。
最低0.47元/天 解锁文章
1617

被折叠的 条评论
为什么被折叠?



