Ribbon—— 第一代Spring Cloud核心组件高级应用

一. 关于负载均衡

负载均衡⼀般分为 服务器端负载均衡 客户端负载均衡
所谓 服务器端负载均衡 ,⽐如 Nginx F5 这些,请求到达服务器之后由这些负载均衡
器根据⼀定的算法将请求路由到⽬标服务器处理。
所谓 客户端负载均衡 ,⽐如我们要说的 Ribbon ,服务消费者客户端会有⼀个服务器
地址列表,调⽤⽅在请求前通过⼀定的负载均衡算法选择⼀个服务器进⾏访问,负
载均衡算法的执⾏是在请求客户端进⾏。
Ribbon Netflflix 发布的负载均衡器。 Eureka ⼀般配合 Ribbon 进⾏使⽤, Ribbon
⽤从 Eureka 中读取到服务信息,在调⽤服务提供者提供的服务时,会根据⼀定的算
法进⾏负载。

 

二. Ribbon⾼级应⽤

不需要引⼊额外的 Jar 坐标,因为在服务消费者中我们引⼊过 eureka-client ,它会引
Ribbon 相关 Jar

代码中使⽤如下,在 RestTemplate 上添加对应注解即可
@Bean
// Ribbon 负载均衡
@LoadBalanced
public RestTemplate getRestTemplate () {
return new RestTemplate ();
}
修改服务提供者 api 返回值,返回当前实例的端⼝号,便于观察负载情况

 测试

 打印如下

三. Ribbon负载均衡策略

Ribbon 内置了多种负载均衡策略,内部负责复杂均衡的顶级接⼝为
com.netflflix.loadbalancer.IRule ,类树如下

 

 在消费端yml文件中修改负载均衡策略

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值