1.max_conns 用于限制每台server的连接数,起到避免过载,可起到限流的作用。
# worker进程设置1个,便于测试观察成功的连接数
worker_processes 1;
upstream tomcats {
server 192.168.1.100:8080 max_conns=2;
server 192.168.1.101:8080 max_conns=2;
server 192.168.1.102:8080 max_conns=2;
}
2.slow_start(商业版,需要付费)逐步达到状态
upstream tomcats {
server 192.168.1.100:8080 weight=6 slow_start=60s;
server 192.168.1.101:8080 weight=2;
server 192.168.1.102:8080 weight=2;
}
3.down 标记服务不可用
upstream tomcats {
server 192.168.1.100:8080 down;
server 192.168.1.101:8080 weight=2;
server 192.168.1.102:8080 weight=2;
}
4.backup 备用机,只有其它服务器全都宕机后,才能可用
upstream tomcats {
server 192.168.1.100:8080 backup ;
server 192.168.1.101:8080 weight=2;
server 192.168.1.102:8080 weight=2;
}
5.max_fails :表示失败几次,就标识宕机,踢出服务
fail_timeout:失败的重试时间
upstream tomcats {
server 192.168.1.100:8080 max_fails=2 fail_timeout=15s ;
server 192.168.1.101:8080 weight=2;
server 192.168.1.102:8080 weight=2;
}
则代表在15秒内请求某一server失败达到2次后,则认为该server已经挂了或者宕机了,随后再过15秒,这15秒内不会有新的请求到达刚刚挂掉的节点上,而是会请求到正常运作的server,15秒后会再有新请求尝试连接挂掉的server,如果还是失败,重复上一过程,直到恢复。