哈喽各位同学们大家好呀 今天是开发者学院中课程“Spring Cloud微服务架构设计与开发实战”的章节二的“Java Spring Cloud微服务 Ribbon负载均衡算法?”干货总结~是一起学习新课程吧
课程链接以及图谱地址小编已经为大家指路了 搭配学习效果更佳
课程名称 Java Spring Cloud微服务 Ribbon负载均衡算法
课程地址 https://developer.aliyun.com/learning/course/60/detail/1088
图谱名称 Alibaba Java 技术图谱
图谱地址 https://developer.aliyun.com/graph/java
Java Spring Cloud微服务 Ribbon负载均衡算法
大家好 我们继续学习?Java Spring?微服务架构设计与实战系列课程。这节课给大家讲一下?Spring Cloud负载均衡算法 这里面有个很重要的技术Ribbon。也是麦飞公司贡献的微服架构体系里面很重要的一个技术组件。?
?
Ribbon负载均衡与底层算法?Spring Cloud负载均衡器Ribbon?
1. Spring Cloud客户端负载均衡器Ribbon?
2. Ribbon是Netflix?发布的开源项目?
3. Ribbon主要功能是提供客户端的软件负载均衡算法 ?
4. Ribbon将Netflix的中间层服务连接在一起。?
5. Ribbon客户端组件提供许多配置如连接超时 重试等。?
6.?配置文件中列出后台所有的机器 ?
7. Ribbon会自动 如简单轮询 随即连接等 去连接这些机器。?
8. Spring Cloud使用Ribbon实现?自定义的负载均衡算法。?
?
基本微服务架构是经过注册中心的一个交互 找到自己的服务 然后完成一个匹配服务的调用。实际生产环境下的话 像订单服务 评论服务 支付服务等会存在多台服务器的情况 实际数量的话是不定数量的 会出现浪费服务器的情况。或者在高频的场景下 订单服务可能有100台、1000台的情况 如果客户端不能把压力就能分散到后台的服务上的话 最大的问题就会出现在我们做后端服务的上 所以这里面的话会有一个集群和负载均衡的概念 负载均衡算法在大规模web集群中是非常常见的。???这个时候就需要Ribbon Ribbon是做微服务集群的一个负载均衡 来帮助我们客户端调用的时候 要体现出来这样一个叫均衡。?
Ribbon技术组件也支持几种主要的算法 随机、路由、权重、最小链接、IP地址增加路由策略等。Ribbon是在Netflix里是已经集成了 使用简单的轮巡策略 但不一定合理 在负载均衡大家稍微注意一下。官方也出了多个类似组件 可以在实习落地方案的时候多个选择。?
?
Ribbon负载均衡算法?Ribbon负载均衡算法?
1.?默认规则 轮训RoundRobin?
2.?简单轮询负载均衡 RoundRobin ?
3.?随机负载均衡? Random 随机选择UP的Server?
4.?加权响应时间负载均衡?WeightedResponseTime?
5.?区域感知轮询负载均衡 ZoneAware ?
?
轮训是最常见的的一种算法 还有随机、权重也都是一种算法 区域感知是可用区域数据中心的可用性有关系。当跨这个数据中心或者多数据中心部署的时 就可以用上。根据客户端的?Ip地址 就近?DNS解析来录入到某个数据中心里面 是一种更优的跨多税中心地域的这样的一个负载均衡算法。一般的话用轮巡或者随机当然其实权重相对来说更合理一点。?
?
这些算法可以直接配置 或者用代码配置 配置的话一般我们用代码可以直接去替换。?
?
Ribbon负载均衡架构图??
Ribbon负载均衡关键点?
1.?服务发现 发现依赖服务列表ServiceList?
2.?服务选择规则 多个服务中选择一个有效服务?
3.?服务监听 检测失效的服务 高效剔除失效服务?
4. Ribbon核心组件 ?
Rule-?从服务列表中如何获取一个有效服务?
Ping-?后台运行线程用来判断服务是否可用?
ServerList-?服务列表?
案例 ?
?
引用Ribbon包?
?
Spring Cloud?Ribbon负载均衡代码?
?
LoadBalanced?
?
Feign默认轮训?
很多时候python都被人称为玩具语言,很多人看不起python,觉得它们不如Java,gol...
本文转载自微信公众号「程序员jinjunzhu」,作者jinjunzhu。转载本文请联系程序...
网络游戏公司往往在运行初期要投入大批资金,购买高性能服务器。可是,一旦进入...
伸缩组 伸缩组是具有相同应用场景的实例的集合,是启停伸缩策略和进行伸缩活动的...
小程序 开发怎么收费?小程序开发收费情况千差万别,便宜的几百元,贵的几千上万...
数字时代,创新的时代。万千开发者汇聚智慧,启迪梦想,不断推动创新发生。成立1...
在可视化工作中,我们通常会根据数据的维度分类来制作图表,比如用户性别、年龄...
TOP云 (west.cn)9月18日消息,刚刚我们报道了paybal通过仲裁赢得 域名 paypals...
4月25日,正值春日明媚,海棠花开之际,由阿里云与宝马(中国)共同主办,在天津...
作者 美的暖通与楼宇事业部?先行研究中心智能技术部 美的暖通 IoT 数据平台建设...