nginx支持的四种负载均衡策略
- 轮询:将请求依次轮询发给每个服务器。
- 最少链接:将请求发送给持有最少活动链接的服务器。
- ip哈希:通过哈希函数决定请求发送给哪个服务器。
- 权重:服务器的权重越高,处理请求的概率越大。
1.轮询负载均衡
在nginx.conf配置文件中添加如下配置
1 | http { |
注意:
- 缺省配置就是轮询策略;
- nginx负载均衡支持http和https协议,只需要修改 proxy_pass后协议即可;
- nginx支持FastCGI, uwsgi, SCGI,memcached的负载均衡,只需将 proxy_pass改为fastcgi_pass, uwsgi_pass, scgi_pass,memcached_pass即可。
- 此策略适合服务器配置相当,无状态且短平快的服务使用。
2.最少链接负载均衡
在nginx.conf配置文件中添加如下配置
1 | http { |
注意:
- 最少链接负载均衡通过least_conn指令定义;
- 此负载均衡策略适合请求处理时间长短不一造成服务器过载的情况;
3.ip哈希负载均衡
在nginx.conf配置文件中添加如下配置
1 | http { |
注意:
- ip哈希负载均衡使用ip_hash指令定义;
- nginx使用请求客户端的ip地址进行哈希计算,确保使用同一个服务器响应请求;
- 此策略适合有状态服务,比如session;
4.权重负载均衡
在nginx.conf配置文件中添加如下配置
1 | http { |
注意:
- 权重负载均衡需要使用weight指令定义;
- 权重越高分配到需要处理的请求越多;
- 此策略可以与最少链接负载和ip哈希策略结合使用;
- 此策略比较适合服务器的硬件配置差别比较大的情况;
健康检测
nginx内置了针对服务器的健康检测机制,如果特定服务器请求失败,则nginx即可进行标记待下次就不会请求分配给它。max_fails定义失败指定次数后进行标记服务器不可用。
- Notice
如若需要,请戳 [ About ] 下联系我 欢迎联系.ok,enjoy it ! ~~
赏
使用支付宝打赏
使用微信打赏
欢迎点击上方按钮对我打赏,谢谢你给我吃糖果