PHP知识点

负载均衡常用算法-PHP面试题6

2021-02-25 13:20:54

常见的几种负载均衡算法.

(我们之前负责的项目主要是通过轮询的方式,去做负载均衡)

1、轮询

将所有请求,依次分发到每台服务器上,适合服务器硬件相同的场景。

优点:服务器请求数目相同;

缺点:服务器压力不一样,不适合服务器配置不同的情况;

2、随机

请求随机分配到各台服务器上。

优点:使用简单;

缺点:不适合机器配置不同的场景

3、最少链接

将请求分配到连接数最少的服务器上(目前处理请求最少的服务器)。

优点:根据服务器当前的请求处理情况,动态分配;

缺点:算法实现相对复杂,需要监控服务器请求连接数;

4、Hash(源地址散列)

根据IP地址进行Hash计算,得到IP地址。

优点:将来自同一IP地址的请求,同一会话期内,转发到相同的服务器;实现会话粘滞。

缺点:目标服务器宕机后,会话会丢失;

5、加权

在轮询,随机,最少链接,Hash等算法的基础上,通过加权的方式,进行负载服务器分配。

优点:根据权重,调节转发服务器的请求数目;

缺点:使用相对复杂;