max_conns

  1. 作用: 限制一台服务器的最大连接数;

  2. 默认值: 0,表示不去做任何限制;  

  3. 目的: 保护服务器,限流,避免过载

  4. 注意:老版本的nginx无法使用此参数(1.11.5只能作用于商业版本)

备注: 使用了多个 worker_processes, 使用多个worker进程,连接总数肯定会大于max_conns

slow_start(商业版本能使用,需要付费):缓慢的启动,慢慢加入到集群,会在配置的时间内将权重慢慢升级到配置的权重值,必须要使用在集群里面,必须要和权重一起使用

upstream tomcats {
  server 192.168.1.173:8080 weight=6 slow_start=60s;
  server 192.168.1.174:8080 weight=2;
  server 192.168.1.175:8080 weight=2; 
}

该参数不能使用在hashrandom load balancing

down:一种状态,标识服务器节点不可用

upstream tomcats {
 server 192.168.1.173:8080 down;
 server 192.168.1.174:8080 weight=1;
 server 192.168.1.175:8080 weight=1;
}

backup:表明服务器是一台备用机(其他服务挂掉之后,才会被访问)

upstream tomcats {
 server 192.168.1.173:8080 backup;
 server 192.168.1.174:8080 weight=1;
 server 192.168.1.175:8080 weight=1;
}
 

upstream指令参数 max_fails、fail_timeout

max_fails:表示失败几次,则标记server已宕机,剔除上游服务。

fail_timeout: 表示失败的重试时间。

max_fails=2 fail_timeout=15s

则表示在15秒内请求某一server失败达到2次后,则认为该server已经挂了或者宕机了,随后15秒内不会有新的请求到达刚刚挂掉的节点上,而是会请求到正常运作的server,15秒后会再有新请求尝试连接挂掉的server,如果还是失败,重复上一过程,直到恢复。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐