分流算法
Load Balancing | 负载均衡
负载均衡算法
常用的负载均衡算法有:轮询,随机,最少链接,源地址哈希,加权等方式。
方式 | 优点 | 缺点 |
---|---|---|
随机 | 简单 | 不适合机器配置不同的场景 |
轮询 | 每台服务器的请求数目相同 | 服务器压力不一样,不适合服务器配置不同的情况 |
最少连接 | 根据服务器当前的请求处理情况,动态分配 | 算法实现相对复杂,需要监控服务器请求连接数 |
源地址哈希 | 将来自同一 IP 地址的请求,同一会话期内,转发到相同的服务器;实现会话粘滞 | 目标服务器宕机后,会话会丢失 |
加权 | 根据权重,调节转发到后端服务器的请求数目 | 使用相对复杂 |
轮询
将所有请求依次分发到每台服务器上,适合服务器硬件配置相同的场景。
随机
请求随机分配到各个服务器。
最少连接
将请求分配到连接数最少的服务器(目前处理请求最少的服务器)。
Hash | 源地址哈希
根据 IP 地址进行 Hash 计算,得到 IP 地址。
加权
在轮询,随机,最少连接,Hash 等算法的基础上,通过加权的方式,进行负载服务器分配。