栏目分类

热点资讯

你的位置:婷儿 勾引 > 就去干就去吻 >

仁科百华资料 负载平衡最全详解(万字图文回来)

发布日期:2024-09-08 17:09    点击次数:162

仁科百华资料 负载平衡最全详解(万字图文回来)

图片仁科百华资料

巨匠好,我是mikechen。

负载平衡是大型网站的必经之路,亦然架构师的必备手段,不管是漫衍式、中间件、已经微干事..等等齐需要波及负载平衡,本篇就全面来详解负载平衡@mikechen

最新mikechen原创超30万字《阿里架构师进阶专题书册》和《最全大厂Java口试题谜底书册》,请存眷本公众号【mikechen的架构条记】,后台修起:尊府,即可领取。

什么是负载平衡

负载平衡(Load Balancing)是一种通过将责任负载分派到多个缱绻资源或系统组件上,以已毕更好的性能、可靠性和可膨胀性的本事。

负载平衡是为了应酬系统中出现的高负载、高并发和大流量等情况,确保系统约略提供高性能、高可用性和可伸缩性。

如下图所示:

图片

在靠近大批用户申请同期造访系统的情况下,单一干事器可能无法灵验处理统共申请,负载平衡不错将申请分袂到多个干事器上,以确保每台干事器的负载相对较轻,普及并发处明智商。

负载平衡算法

负载平衡算法,主要分为如下5类:

1.轮循

轮询算法(Round Robin)这是最肤浅的负载平衡算法之一,将每个新的申请按序分派给干事器列表中的下一个干事器。

如下图所示:

图片

适用于干事器性能临近的场景,确保申请相对均匀地漫衍在统共干事器上。

2.加权轮循

加权轮询算法(Weighted Round Robin)访佛于轮询算法,但为每个干事器分派一个权重值,权重越高的干事器取得处理申请的概率越大。

如下图所示:

图片

在轮询的基础上字据硬件成立不同,按权重分发到不同的干事器,这么不错更好地妥贴不同干事器性能的场景。

3.赶紧

赶紧算法,该算法的基本想想是赶紧选拔一个干事器来处理每个新的申请,以达到负载平衡的看法。

如下图所示:

图片

赶紧算法的优点在于已毕肤浅,有关词由于其赶紧性,弗成确保每个干事器取得交流数目的申请,因此在骨子欺骗中可能导致某些干事器的负载较重,而其他干事器较轻。

4.最少流通

最少流通算法是一种常用的负载平衡算法,其基本想想是将新的申请分派给现时流通数最少的干事器,以达到负载平衡的看法。

如下图所示:

图片

记载每个干事器正在处理的申请数,把新的申请分发到最少流通的干事器上,因为要厚爱里面景色不推选。

5.哈希

哈希算法(Hash-based Load Balancing)字据申请的某些特征,比如:IP地址、URL等缱绻哈希值,然后将申请分派到对应哈希值的干事器上。

如下图所示:

图片

这种算法确保交流的申请经久被分派到交流的干事器,有助于处理特定的会话保抓等需求。负载平衡的分类

图片

负载平衡主要分为二层 三层 四层 七层负载平衡。

1.二层负载平衡

二层负载平衡,是在OSI模子的数据链路层(第二层)进行负载平衡的一种面孔。

在这个头绪上,主要波及到MAC地址的操作,这种负载平衡经常被称为二层交换机(Layer 2 Switching),或二层负载平衡器。

在二层负载平衡中,负载平衡器通过查验数据帧的看法MAC地址来决定将数据帧转发到哪个干事器。

二层负载平衡经常用于处理出奇大批、短会话的负载平衡需求,比如在局域网内进行干事器之间的负载平衡。

2.三层负载平衡

三层负载平衡,是在OSI模子的收罗层(第三层)进行负载平衡的一种面孔。

在这个头绪上主要波及到IP地址的操作,这种负载平衡经常被称为三层交换机(Layer 3 Switching),或三层负载平衡器。

3.四层负载平衡

四层负载平衡是在OSI模子的传输层(第四层)进行负载平衡的一种面孔,在这个头绪上,主要波及到IP地址和端标语的操作。

已毕四层负载平衡的软件有:

F5:F5是一款交易硬件负载平衡,复古四层和七层的负载平衡,功能很好,关联词资本很高;

lvs:LVS是一个在Linux上已毕的四层负载平衡器,复古多种负载平衡算法,如轮询、最小流通数等;

nginx:Nginx是一款世俗使用的开源Web干事器,同期也复古四层负载平衡;

haproxy:HAProxy是一款开源的、高性能的负载平衡软件,复古TCP和HTTP欺骗层负载平衡。

4.七层负载平衡

七层负载平衡是在OSI模子的欺骗层(第七层)进行负载平衡的一种面孔。七层负载平衡,经常用于HTTP和HTTPS流量的负载平衡。

七层负载平衡器约略深远到欺骗层的左券信息,举例:HTTP头部、URL等,这使得它不错字据更丰富的信息进行负载平衡

已毕七层负载平衡的软件有:

Nginx: 除了复古四层负载平衡外,NGINX亦然一种纷乱的七层负载平衡器,出奇适用于处理HTTP和HTTPS流量。

F5:F5是一款交易七层负载平衡和欺骗托福截至器,提供丰富的负载平衡、安全性和性能优化功能。

总的来说,一般是lvs作念4层负载,nginx作念7层负载。

负载平衡的旨趣

跟着欺骗的用户数目和流量的增多,单一负载平衡实例可能会成为瓶颈,无法灵验地处理统共的申请。

通过横向膨胀,不错将流量分袂到多个负载平衡器实例上,普及统共这个词系统的处明智商。

如下图所示:

图片

淌若系统中只须一个负载平衡器实例,其故障可能导致统共这个词系统的不可用。

通过横向膨胀,多个负载平衡器实例不错共同责任,即使其中一个实例发生故障,其他实例仍然不错不竭分发流量,普及系统的可用性。

除此以外,通过横向膨胀负载平衡,还不错增多系统的全体性能,摊派单一负载平衡实例的压力,从而普及系统的反应速率和处明智商。

负载平衡欺骗场景

图片

负载平衡本事不错欺骗于多种场景:

1.Web欺骗负载平衡

场景形容:高流量的Web欺骗中,大批用户造访Web干事器,申请包括网页、图片、CSS、JavaScript等资源。

管制决策:负载平衡器将用户申请分发到多个Web干事器,确保每个干事器取得相对均匀的负载,普及全体性能和反应速率。

2.数据库负载平衡

场景形容:数据库干事器是欺骗要道组件,需要处理大批数据库查询和事务。

管制决策:负载平衡器确保数据库负载均匀漫衍,看管某个数据库成为性能瓶颈,普及数据库性能和可靠性。

3.欺骗干事负载平衡

场景形容:复杂的欺骗架构中,多个欺骗干事器共同处理用户申请,每个干事器负责不同的业务逻辑。

管制决策:负载平衡器确保申请分派到可用的欺骗干事器,看管某个干事器过载,普及全体欺骗性能和可用性。

4.云缱绻负载平衡

场景形容:在云缱绻环境中,干事需要在云中多个实例之间分发流量。

管制决策:云干事提供商提供的负载平衡干事可用于分发云干事的流量,确保用户约略造访到可用的云资源。

以上

车震视频

临了送巨匠一个福利:

送巨匠一份我原创超30万字的阿里架构师进阶专题书册,出奇的全面。

图片

以及给巨匠整理了一份出奇全面的Java口试题及谜底书册,包含:Java、多线程、JVM、Spring、MySQL、Redis、Dubbo、中间件…等最全大厂必考题及谜底详解。

图片

本站仅提供存储干事,统共内容均由用户发布,如发现存害或侵权内容,请点击举报。

我的网站