15、Feign和Ribbon的联系

一、 Feign和Ribbon的联系

Ribbon是一个基于 HTTP 和 TCP 客户端 的负载均衡的工具。它可以 在客户端 配置RibbonServerList(服务端列表),使用 HttpClient 或 RestTemplate 模拟http请求,步骤相当繁琐。

Feign 是在 Ribbon的基础上进行了一次改进,是一个使用起来更加方便的 HTTP 客户端。采用接口的 方式, 只需要创建一个接口,然后在上面添加注解即可 ,将需要调用的其他服务的方法定义成抽象方 法即可, 不需要自己构建http请求。然后就像是调用自身工程的方法调用,而感觉不到是调用远程方 法,使得编写客户端变得非常容易

二、 负载均衡

Feign中本身已经集成了Ribbon依赖和自动配置,因此我们不需要额外引入依赖,也不需要再注册 RestTemplate 对象。另外,我们可以像上节课中讲的那样去配置Ribbon,可以通过 ribbon.xx 来进行全局配置。也可以通过 服务名.ribbon.xx 来对指定服务配置:

1、启动两个 product_service ,重新测试可以发现使用Ribbon的轮询策略进行负载均衡。
在这里插入图片描述
在这里插入图片描述
2、请求Eureka注册中心地址:http://127.0.0.1:9000/
会发现有两个商品服务,端口分别为9001、9011如图:
在这里插入图片描述
3、请求订单服务地址:http://127.0.0.1:9002/order/buy/1
调用的是不同的商品服务,并且是轮询策略,如图:
在这里插入图片描述在这里插入图片描述

发布了63 篇原创文章 · 获赞 4 · 访问量 3450

猜你喜欢

转载自blog.csdn.net/qq_41347385/article/details/105094190