nginx:负载均衡(三)分流策略

【1】轮询策略。
轮询策略是最简单的策略,无脑配置,不考虑服务器的访问的能力。每个请求按照时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除

upstream www.daysn.com{
server www.daysn.com:8080;
server www.daysn.com:9080;
}

【2】权重策略
权重策略,适用于每台机器配置不同的情况,下面这个是8080:9080=3:2,也就是说每五次请求三次达到8080,2次打到8090.
upstream www.daysn.com{
server www.daysn.com:8080 weight=15;
server www.daysn.com:9080 weight=10;
}

【3】ip_hash
IP hash 是用来解决session问题的,根据请求的ip算hash然后打过去一个固定的后端服务器,这样一来这个ip下的某个客户端和某个后端就能建立起稳固的session了。

upstream www.daysn.com{
ip_hash;
server www.daysn.com:8080;
server www.daysn.com:9080;
}
因为能计算hash的只是ip,会造成下面一些问题。

1.nginx必须在最前端,否则拿不到正确ip

2.假设nginx还有其他分流措施,那么不一定能达到同一台机器上。

【3】fair
按后端服务器的响应时间来分配,响应时间短的优先分配

upstream www.daysn.com{
server www.daysn.com:8080;
server www.daysn.com:9080;
fair;
}

----------------------------------------------------------------------------我是例子分界线--------------------------------
小例子:
upstream www.daysn.com{
ip_hash;
server www.daysn.com:8080 down; (down:这个服务器不参与负载均衡)
server www.daysn.com:8081
server www.daysn.com:8082 weight=100;;
server www.daysn.com:8083 backup;(备份机器,所有的非备份机忙或者down了,请求这个机器)
}

原文地址:https://www.cnblogs.com/daysn/p/10108925.html