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+自旋的思想,要实现在实例的列表中选择一个并返回。

相关推荐
源码宝1 天前
【智慧工地源码】智慧工地云平台系统,涵盖安全、质量、环境、人员和设备五大管理模块,实现实时监控、智能预警和数据分析。
java·大数据·spring cloud·数据分析·源码·智慧工地·云平台
2301_793086871 天前
SpringCloud 07 微服务网关
java·spring cloud·微服务
小晶晶京京2 天前
day35-负载均衡
运维·网络·网络协议·学习·负载均衡
创码小奇客3 天前
架构师私藏:SpringBoot 集成 Hera,让日志查看从 “找罪证” 变 “查答案”
spring boot·spring cloud·trae
CodeDevMaster3 天前
Gemini Balance:轻松实现Gemini API负载均衡与无缝切换的终极指南
负载均衡·api·gemini
2301_793086873 天前
SpringCloud 02 服务治理 Nacos
java·spring boot·spring cloud
甄超锋3 天前
Java ArrayList的介绍及用法
java·windows·spring boot·python·spring·spring cloud·tomcat
甄超锋4 天前
Java Maven更换国内源
java·开发语言·spring boot·spring·spring cloud·tomcat·maven
sniper_fandc4 天前
Spring Cloud系列—Alibaba Sentinel授权与规则管理及推送
spring cloud·sentinel
泉城老铁5 天前
Spring Boot中实现多线程6种方式,提高架构性能
spring boot·后端·spring cloud