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

本文探讨了Ribbon负载均衡器在服务器端和客户端的运作方式,介绍了如何在Spring Boot中集成Ribbon,以及如何通过YML配置不同的负载均衡策略。重点讲解了IRule接口和内置的均衡算法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一. 关于负载均衡

负载均衡⼀般分为服务器端负载均衡客户端负载均衡
所谓服务器端负载均衡,⽐如NginxF5这些,请求到达服务器之后由这些负载均衡
器根据⼀定的算法将请求路由到⽬标服务器处理。
所谓客户端负载均衡,⽐如我们要说的Ribbon,服务消费者客户端会有⼀个服务器
地址列表,调⽤⽅在请求前通过⼀定的负载均衡算法选择⼀个服务器进⾏访问,负
载均衡算法的执⾏是在请求客户端进⾏。
RibbonNetflflix发布的负载均衡器。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、付费专栏及课程。

余额充值