负载均衡简介

负载均衡

负载均衡(Load Balance,简称 LB)是高并发、高可用系统必不可少的关键组件,目标是 尽力将网络流量平均分发到多个服务器上,以提高系统整体的响应速度和可用性。

负载均衡的分类和OSI模型息息相关,请看下图OSI模型及相关解释。以便更好的理解负载均衡的分类。

负载均衡分类

二层负载均衡(mac)

根据OSI模型分的二层负载,一般是用虚拟mac地址方式,外部对虚拟MAC地址请求,负载均衡接收后分配到后端的实际mac地址响应。

三层负载均衡(ip)

采用虚拟IP地址的方式,外部对虚拟的IP地址请求,负载均衡接收后分配后端实际的IP地址响应。

四层负载均衡(tcp)

基于IP端口的负载均衡,在三次负载均衡的基础上,用IP PORT接收请求,在转发到对应的机器上面去。

七层负载均衡(http)

基于虚拟的URL和IP的负载均衡,根据url和IP,主机接收请求,在转发到相应的服务器。

负载均衡工具

一般四层和七层负载均衡用到的比较多。

像Nginx、HAProxy用来坐七层负载均衡,LVS用来做四层负载均衡。

负载均衡算法

轮询

轮询法,就是将用户的请求轮流分配给服务器,就像是挨个数数,轮流分配。这种算法比较简单,他具有绝对均衡的优点,但是也正是因为绝对均衡它必须付出很大的代价,例如它无法保证分配任务的合理性,无法根据服务器承受能力来分配任务。

比率(加权轮询)

按照权重将请求分发到不同的服务器,一般配置高的权重高,使其处理更多的请求。

随机

随机法,是随机选择一台服务器来分配任务。它保证了请求的分散性达到了均衡的目的。同时它是没有状态的不需要维持上次的选择状态和均衡因子。但是随着任务量的增大,它的效果趋向轮询后也会具有轮询算法的部分缺点。

说白了,随机的选取一台服务器来处理请求。

最小连接

最小连接法,将任务分配给此时具有最小连接数的节点,因此它是动态负载均衡算法。一个节点收到一个任务后连接数就会加1,当节点故障时就将节点权值设置为0,不再给节点分配任务。

说白了,就是.将请求打到最少连接的服务器。

最快响应

请求转发到响应最快的服务器。

哈希

通过hash算法决定请求分发到哪台服务器。

相关推荐
陈希1231 天前
Nginx 从入门到能扛事:反向代理、负载均衡与 HTTPS 实战
nginx·https·负载均衡
未来之窗软件服务6 天前
WAF负载均衡+蜜罐混淆安全体系-东方仙盟
运维·安全·负载均衡·仙盟创梦ide·东方仙盟·阿雪技术观·网关开发
Linux-lucky6 天前
46-Linux学习之旅之LVS负载均衡与keepalived高可用
linux·运维·学习·ubuntu·负载均衡·lvs
小羊没烦恼!9 天前
关于分布式锁原理的一些学习与思考-redis分布式锁,zookeeper分布式锁
java·服务器·网络·学习·负载均衡
知已难寻11 天前
00 · OpenStack 总纲——从云计算到 OpenStack 全景
运维·服务器·云原生·云计算·负载均衡·openstack·perl
七夜zippoe11 天前
Agent 网关设计:统一入口、智能路由与负载均衡
运维·ai·log4j·负载均衡·agent·网关设计
Vitaliy Kostrov(柯维远)12 天前
Multi-CDN 决策闭环:QoE、成本、安全与内容正确性如何进入同一个策略引擎?
安全·网络安全·云计算·音视频·负载均衡·cdn
知已难寻13 天前
第 2 篇 · 云的地基:服务器、存储、网络三大基础设施
运维·服务器·网络·云原生·云计算·负载均衡·1024程序员节
Ivanqhz13 天前
MoE 原理、TC/EC 路由、LSH-MoE 与负载均衡浅析
运维·网络·人工智能·深度学习·算法·机器学习·负载均衡
网络小江17 天前
组网第27课:ARP 的能与不能——免费 ARP、代理 ARP 与 ARP 欺骗
服务器·网络·网络安全·负载均衡·免费arp