默认是round-robin算法
加权round-robin算法
集成在upstream框架中
指令:
- weight 服务访问权重 默认是1
- max_conns : server的最大并发连接数 ,默认是0 , 表示没有限制
- max_fails: 在fail_timeout时间内 , 最大 失败次数 , 当达到最大失败时 , 会在fail_timeout秒内这台server不允许被再次选择
- fail_timeout : 默认10s
ip_hash算法
基于客户端ip地址作为hash算法的关键字 ,映射到上游特定服务器中, 对ipv4来说使用前3个字节作为关键字 , ipv6使用完整地址
指令:
1 | Syntax: ip_hash; |
一致性hash算法
指定任意关键字作为hash key , 映射到特定的上游服务器
指令:
1 | Syntax: hash key [consistent]; |
最少连接
1 | Syntax: least_conn; |
选择上游中连接最少的一个