SpringCloud——负载均衡——Ribbon

负载均衡分为集中式 LB(Nginx实现)和进程内LB(Ribbon)。

Ribbon简单来说就是负载均衡 +RestTemplate调用

1.Ribbon在工作中分成两步

1.先选择EurekaServer,它优先选择在同一个区域内负载较少的EurekaServer。

2.在根据用户指定的策略,从服务注册的列表上选择一个地址。

注意:spring-cloud-starter-netflix-eureka-client这个jar内部引入了ribbon

2.轮询算法的继承结构

3.Ribbon默认轮询算法的原理

里面会有一个调用服务次数的计数器,采用 计数器 %此服务实例的个数 = 最终调用的服务的下标索引。服务每次重启的话,计数器又从1重新开始。

4.手写轮询算法

CAS+自旋的思想,要实现在实例的列表中选择一个并返回。

相关推荐
看昭奚恤哭2 小时前
平滑加权轮询负载均衡的底层逻辑
运维·负载均衡
史呆芬4 小时前
分布式事务实战:微服务跨服务数据一致性解决方案
java·后端·spring cloud
niaiheni5 小时前
红队实战:记一次Spring Cloud Gateway SpEL表达式注入到哥斯拉内存马(CVE-2022-22947)
web安全·spring cloud·网络安全
小张同学a.11 小时前
LAMP架构2
linux·运维·网络·架构·负载均衡
zzzll111111 小时前
Spring Cloud 微服务:从入门到实践
spring·spring cloud·微服务
Devin~Y13 小时前
从本地生活电商到 AI RAG:互联网大厂 Java 面试场景完整实战
java·spring boot·redis·elasticsearch·spring cloud·kafka·rag
小罗水1 天前
第11章 PostgreSQL + pgvector 向量检索
java·数据库·spring cloud·微服务
懒神降世2 天前
LVS负载均衡集群项目总结(二)
运维·负载均衡·lvs
爱学习的小可爱卢2 天前
SpringCloud——深入解析SkyWalking源码:TraceProfiling追踪慢方法
spring cloud·微服务·skywalking
小罗水2 天前
第8章 文档解析与文本切片
数据库·spring·spring cloud·微服务