了解最新公司动态及行业资讯
大家好,我是mikechen。
负载均衡可以说无处不在,无论是分布式集群,还是在中间件的研发,以及架构设计,都会涉及到负载均衡。
所以,今天我就重点来谈谈负载均衡的6大策略@mikechen
本篇已经收纳于mikechen创作的《阿里架构师进阶专题合集》里面。
该阿里架构师专题合集,涵盖了一线互联网大厂经常涉及的:单点登录、双11秒杀、分布式架构、分布式缓存、分布式通信、负载均衡、微服务、中间件、高并发、性能优化..等大厂架构技术。
首先,一台机器不能满足,则增加两台或者多台机器,共同承担访问压力,这就是典型的集群和负载均衡架构。
如下图所示:
上面的的客户端访问,需要通过负载均衡采用分发到不用的应用服务器上,这里就会涉及到负载均衡策略。
常见的负载均衡策略,主要包含如下策略:
1.轮询(Round Robin)
按照顺序将请求依次分配给每个服务器,确保每个服务器都能平均分担负载。
如下图所示:
适用于服务器性能相似,无需考虑服务器当前负载情况的情况。
2.IP 哈希(IP Hash)
根据客户端的 IP 地址将请求分配给服务器,这会通过哈希函数来分配应用服务器。
如下图所示:
相同 IP 的客户端将始终被分配到同一台服务器上,当后端服务器列表不变时,这对于某些需要保持会话的应用程序很有用。
3.加权轮询(Weighted Round Robin)
为每个服务器分配一个权重值,根据权重值决定分配请求的比例,权重越高的服务器分配到的请求数量就越多。
如下图所示:
4.最少连接(Least Connection)
将请求分配给当前连接数最少的服务器,以确保每个服务器的负载尽可能平衡。
如下图所示:
适用于请求处理时间不同,负载可能不均衡的情况。
5.随机策略
通过系统随机函数,根据后台服务器列表的大小值来随机选取其中一台进行访问。
如下图所示:
随着调用量的增大,客户端的请求可以被均匀地分派到所有的后端服务器上,其实际效果越来越接近于平均分配流量到后台的每一台服务器,也就是轮询法的效果。
6.加权最少连接(Weighted Least Connection)
结合了加权和最少连接策略,服务器的权重值与当前连接数成反比,连接数越少且权重越高的服务器将获得更多的请求。
以上!
本篇已经收纳于mikechen创作的《阿里架构师进阶专题合集》里面。