Ribbon-负载均衡原理解析(案例)

简介:负载均衡,英文名称为Load Balance,其含义就是指将负载(工作任务)进行平衡、分摊到多个操作单元上进行运行,例如FTP服务器、Web服务器、企业核心应用服务器和其它主要任务服务器等,从而协同完成工作任务。

负载均衡主要分为软件负载和硬件负载,在微服务盛行的现在,软件负载在微服务里成为主流,netflix的ribbon就是其中之一。

目录

1、负载均衡原理

[1.1 负载均衡流程](#1.1 负载均衡流程)

[1.2 负载均衡原理](#1.2 负载均衡原理)

2、负载均衡策略

[2.1 负责均衡规则](#2.1 负责均衡规则)

[2.2 负责均衡策略](#2.2 负责均衡策略)

3、饥饿加载


1、负载均衡原理

1.1 负载均衡流程

图 1.1-1 负载均衡流程
上图中展示的是负载均衡流程:首先是服务(order-service)发起请求,请求被Ribbon(负载均衡)接收并且去拉取eureka-server的注册信息,让其返回服务列表,在服务列表中选择合适的服务。

1.2 负载均衡原理

图 1.2-1 负载均衡原理
上图中展示的是负载均衡原理,图中介绍比较详细,这里就不做过多说明了。 其中比较重要的是选择服务列表中的服务对象方法有两个,定义在IRule接口里面:一是轮询调度,而是随机数。

2、负载均衡策略

2.1 负责均衡规则

图 2.1-1 负责均衡规则
从图中我们可以看到,日常使用的调度规则 "ZoneAvoidanceRule" 集成自轮询调度

2.2 负责均衡策略

图 2.2 负责均衡策略
上图中展示的是负责均衡策略,有两种方式:一种是在启动类中创建一个 返回IRule的对象,作用域是针对所有的微服务,另一种是修改配置文件。

3、饥饿加载

图 3-1 饥饿加载
上图中展示的是饥饿加载。

4、总结

相关推荐
逃逸线LOF1 天前
为什么需要Actuator进行静态检查
spring cloud·eureka
水无痕simon1 天前
3、工程重构
java·spring cloud·重构
shuair1 天前
Spring Cloud 微服务脚手架:Simple Cloud 系统架构设计
spring cloud·微服务·系统架构
小羊没烦恼!2 天前
关于分布式锁原理的一些学习与思考-redis分布式锁,zookeeper分布式锁
java·服务器·网络·学习·负载均衡
知已难寻4 天前
00 · OpenStack 总纲——从云计算到 OpenStack 全景
运维·服务器·云原生·云计算·负载均衡·openstack·perl
七夜zippoe4 天前
Agent 网关设计:统一入口、智能路由与负载均衡
运维·ai·log4j·负载均衡·agent·网关设计
Vitaliy Kostrov(柯维远)5 天前
Multi-CDN 决策闭环:QoE、成本、安全与内容正确性如何进入同一个策略引擎?
安全·网络安全·云计算·音视频·负载均衡·cdn
知已难寻6 天前
第 2 篇 · 云的地基:服务器、存储、网络三大基础设施
运维·服务器·网络·云原生·云计算·负载均衡·1024程序员节
Ivanqhz6 天前
MoE 原理、TC/EC 路由、LSH-MoE 与负载均衡浅析
运维·网络·人工智能·深度学习·算法·机器学习·负载均衡
这里是杨杨吖6 天前
SpringCloud+Vue民宿房屋租赁系统 附带详细运行指导视频
vue.js·spring boot·spring cloud·房屋·民宿租赁