本文来自nginx教程,文中为大家介绍了nginx实现负载均衡的几种模式,具有一定的参考价值,希望可以帮助到大家。nginx实现负载均衡的模式:1、轮询;2、ip_hash;3、url_hash;4、fair。
(推荐教程:nginx教程)
nginx实现负载均衡有几种模式:
1、轮询
每个请求按时间顺序逐一分配到不同的后端服务器,也是nginx的默认模式。轮询模式的配置很简单,只需要把服务器列表加入到upstream模块中即可。
下面的配置是指:负载中有三台服务器,当请求到达时,nginx按照时间顺序把请求分配给三台服务器处理。
upstream serverList { server 1.2.3.4; server 1.2.3.5; server 1.2.3.6; }
2、ip_hash
每个请求按访问IP的hash结果分配,同一个IP客户端固定访问一个后端服务器。可以保证来自同一ip的请求被打到固定的机器上,可以解决session问题。
下面的配置是指:负载中有三台服务器,当请求到达时,nginx优先按照ip_hash的结果进行分配,也就是同一个IP的请求固定在某一台服务器上,其它则按时间顺序把请求分配给三台服务器处理。
upstream serverList { ip_hash server 1.2.3.4; server 1.2.3.5; server 1.2.3.6; }
3、url_hash
按访问url的hash结果来分配请求,相同的url固定转发到同一个后端服务器处理。
upstream serverList { server 1.2.3.4; server 1.2.3.5; server 1.2.3.6; hash $request_uri; hash_method crc32; }
4、fair
按后端服务器的响应时间来分配请求,响应时间短的优先分配。
upstream serverList { server 1.2.3.4; server 1.2.3.5; server 1.2.3.6; fair; }
以上是nginx实现负载均衡有哪几个模式的详细内容。更多信息请关注PHP中文网其他相关文章!