目前nginx负载均衡支持几种的分配
轮换
每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除.
存在session问题 被代理的服务器如tomcat要实现session同步
upstream www.com {
server 127.0.0.1:8081 ;
server 127.0.0.1:8082 ;
}
weight 权重
权重值越高优先级越高 存在session问题 被代理的服务器如tomcat要实现session同步
upstream www.com {
server 127.0.0.1:8081 weight=1;
server 127.0.0.1:8082 weight=2;
}
ip_hash
每个请求按访问ip的hash算法分配,这样每个访客固定访问一个后端服务器,可以解决session的问题.
upstream www.com {
ip_hash;
server 127.0.0.1:8081;
server 127.0.0.1:8082 ;
}
总结
upstream www.com {
ip_hash;
server 127.0.0.1:8081 down; (down 表示单前的server暂时不参与负载)
server 127.0.0.1:8082 weight=2; (weight 默认为1.weight越大,负载的权重就越大)
server 127.0.0.1:8083 ;
server 127.0.0.1:8084 backup; (其它所有的非backup机器down或者忙的时候,请求backup机器)