Skip to content

Files

Latest commit

 

History

History
22 lines (14 loc) · 1.5 KB

nginx.md

File metadata and controls

22 lines (14 loc) · 1.5 KB
  1. upstream用来实现负载均衡策略,通过绑定多个server可以将request根绝设置的策略分配到多个server上。

  2. weight指定了权重,默认为1,即round-robin将request平均分配到每个server中,设置weight后会根据每台server的weight所占总weight的比重分配相应的request比例。

  3. 设置了backup的server默认不参与request分配,只在所有非backup机器全不可用时,会访问backup。

  4. 设置了ip_hash则根据ip来将同一个ip的请求都分配到同一个server上,该选项和weight冲突。该hash的准则是以ipv4点分十进制的前3部分作为key建立hash。down配合该指令使用,可以使一台机器暂时不接受request,但是保存hash的现状。

  5. 一个请求如果到分配到的server失败,则默认分配到下一个server,只到可用server都不可用,则返回最后一台server返回的错误结果。

  6. max_failsfail_timeout指定了每个请求访问同一台server允许的失败次数和作为访问失败的超时时间,次数默认为1。

  7. down可以用来标注一台server暂时不可用(这样就不用删掉代码)。

  8. server_name 的匹配顺序是:

  • 精确匹配
  • *在前的通配符匹配
  • *在后的通配符匹配
  • 正则匹配 通配符匹配的*只能在前面或后面,而且和.在一起使用,并且可以匹配多个 part。正则匹配需要以~开始,如果正则中有{},需要将正则用双引号包裹起来。