17-upstream指令参数

2022-09-13 09:20:06 浏览数 (1)

upstream指令参数

max_conns

默认值为0, 值为数字类型, 用于限制该服务器的最大连接数(如果是多个工作进程,那么就会超出这个值)

设置方式

代码语言:javascript复制
upstream tomcats {
  server 192.168.247.136:8001 max_conns=2;
  server 192.168.247.136:8002 max_conns=2;
  server 192.168.247.136:8003 max_conns=2;
}
server{
  listen        80;
  server_name   www.tomcat.com;
  location / {
    proxy_pass  http://tomcats;
  }
}

slow_start

默认是关闭的disabled, 值为时间类型, 用于缓慢的启动服务器, 可以用于观测流量变化, 使用该属性时, 不可以使用IP_HASH, 随机策略的, 并且权重属性会从0慢慢开始增长, 在指定时间内增长完毕

设置方式[商业版参数]

代码语言:javascript复制
upstream tomcats {
  server 192.168.247.136:8001 weight=7 slow_start=60s;
  server 192.168.247.136:8002 weight=2;
  server 192.168.247.136:8003 weight=2;
}
server{
  listen        80;
  server_name   www.tomcat.com;
  location / {
    proxy_pass  http://tomcats;
  }
}

down

用于标识该服务器是不可用状态

设置方式

代码语言:javascript复制
upstream tomcats {
  server 192.168.247.136:8001 weight=7 down;
  server 192.168.247.136:8002 weight=2;
  server 192.168.247.136:8003 weight=2;
}
server{
  listen        80;
  server_name   www.tomcat.com;
  location / {
    proxy_pass  http://tomcats;
  }
}

backup

用于标识这是一台备用服务器, 一开始是不会被用户访问到的, 只有在其他节点挂掉之后, 才会被启动

设置方式

代码语言:javascript复制
upstream tomcats {
  server 192.168.247.136:8001 backup;
  server 192.168.247.136:8002 weight=2;
  server 192.168.247.136:8003 weight=2;
}
server{
  listen        80;
  server_name   www.tomcat.com;
  location / {
    proxy_pass  http://tomcats;
  }
}

max_fails与 fail_timeout

max_fails用于配置失败次数, fail_timeout用于配置时间段, 如果失败次数是10次,时间段为60秒, 那么这台服务器在60秒内失败次数达到10次, Nginx就会认为这台服务器是有问题的, 就会踢出, 让请求访问正常的服务器, 在60秒过后, 请求会继续落在这台服务器上然后继续尝试,如果在60秒内又达到10次,那么再次踢出, 循环往复

设置方式

代码语言:javascript复制
upstream tomcats {
  server 192.168.247.136:8001 max_fails=10 fail_timeout=60s;
  server 192.168.247.136:8002 weight=2;
  server 192.168.247.136:8003 weight=2;
}
server{
  listen        80;
  server_name   www.tomcat.com;
  location / {
    proxy_pass  http://tomcats;
  }
}

0 人点赞