java

Nginx负载均衡:常用策略配置、参数知识点

2019-03-05  本文已影响0人  二妹是只猫

配置策略:

轮询(默认)
权重
ip hash
url hash(第三方)
fair(第三方)
轮询(默认):
权重(实际生产环境用的最多的配置):
upstream www.izou.work{
    server www.izou.work:8080 weight=10;
    server www.izou.work:9080 weight=5;
 }
ip hash
upstream www.izou.work{
    ip_hash;
    server www.izou.work:8080 ;
    server www.izou.work:9080;
 }
url hash(第三方)
upstream www.izou.work{
    server www.izou.work:8080 ;
    server www.izou.work:9080;
    hash  $request_uri;
 }
fair(第三方)
upstream www.izou.work{
    server www.izou.work:8080 ;
    server www.izou.work:9080;
    fair;
 }

负载均衡参数知识点:

upstream backserver{
   ip_hash;(使用ip_hash策略配置)
  server 127.0.0.1:9090 down;(down表示当前的server暂时不参与负载)
  server 127.0.0.1:8080 weight=2;(weight默认为1,wieght越大,负载的权重越大)
  server 127.0.0.1:7070
  server 127.0.0.1:6060;(当作备用,其他所有非backup机器down或者忙的情况下,请求backup机器)
 }

补充:

upstream指令参数

max-conns:
限制每台server的连接数,用于保护避免过载,可起到限流作用.参考配置如下:

#worker进程设置1个,便于测试观察成功的连接数
worker_processes 1;

upstream tomcats{
    server 192.168.2.21:8080 max_conns=2;
    server 192.168.2.22:8080 max_conns=2;
    server 192.168.2.23:8080 max_conns=2;
}

slow_start:
商业版,需要付费
配置参考如下

upstream tomcats{
    server 192.168.2.21:8080 weight =2  slow_start=60s;
    server 192.168.2.22:8080 weight =2;
    server 192.168.2.23:8080 weight=2;
}

注意:

upstream tomcats{
    server 192.168.2.21:8080 weight =2  down;
    server 192.168.2.22:8080 weight =2;
    server 192.168.2.23:8080 weight=2;
}

backup:
表示当前服务器是备用机,只有在其他服务器都宕机以后,自己才会加入到集群中,被用户访问:
配置参考如下

upstream tomcats{
    server 192.168.2.21:8080 weight =2  backup;
    server 192.168.2.22:8080 weight =2;
    server 192.168.2.23:8080 weight=2;
}

注意:

max_fails:
表示失败几次,则标记为已宕机,踢出上游服务
faiL_timeoust:
表示失败的重试时间
Keepalived:
提高吞吐量
keepalived:设置长链接处理的数量
proxy_http_version':设置长连接http版本proxy_set_header`:清除connection header 信息

upstream tomcats{
    server 192.168.2.21:8080 weight =2  slow_start=60s;
    server 192.168.2.22:8080 weight =2;
    server 192.168.2.23:8080 weight=2;
    keepalive 32;
}
server  {
  lisstne  80;
  server_name www.tomcats.com

  location  / {
      proxy_pass http://tomcats;
      proxy_http_version 1.1;
      proxy_set_header  Connection "";
  }
}
上一篇 下一篇

猜你喜欢

热点阅读