Nginx中ngx_http_upstream_module模块
用于將多個服務器?定義成服務器?組,?而
由 proxy_pass , fastcgi_pass 等指令進?行行引?用
upstream backend {
server backend1.example.com
weight=5;
server backend2.example.com:8080
;
server unix:/tmp/backend3;
server backup1.example.com:8080
backup;
server backup2.example.com:8080
backup;
}
server {
location / {
proxy_pass http://backend;
}
}
指令:
16.1 upstream
定義后端服務器?組,會引?入?一個新的上下?文
Syntax: upstream name { ... }
Default: —
Context: http
16.2 server
定義服務器? address ,可以將地址指定為域名或IP
地址,使?用可選端?口,或者指定為 unix: 前綴后指
定的 UNIX 域套接字路路徑。如果未指定端?口,則使?用
端?口80
Syntax: server address [parameters];
Default: —
Context: upstream
參數:
weight=number # 權重,默認為1
max_conns # 連接后端報務器?最?大并發活動
連接數
max_fails=number # 連接后端服務器?最?大
失敗次數,超出指定的次數時, server 將
被標記為不不可?用,默認為1
fail_timeout=time # 后端服務器?在指定超
時時間內未做出回應,也會被認為不不可?用,
默認10s
backup # 將服務器?標記為 backup ,表示備
份服務器?( sorry server ),即所有服務器?
均不不可?用時才啟?用
down # 將服務器?標記為 down ,表示不不可
?用,配合 ip_hash 使?用,實現灰度發布
16.3 ip_hash
源地址 hash 調度?方法
Syntax: ip_hash;
Default: —
Context: upstream
16.4 least_conn
最少連接調度算法,當 server 擁有不不同的權重時其
為 wlc ,當所有后端主機連接數相同時,則使
?用 wrr ,適?用于?長連接
Syntax: least_conn;
Default: —
Context: upstream
16.5 hash
基于指定的 key 的 hash 表來實現對請求的調度,此
處的 key 可以直接?文本、變量量或?二者組合。將請求
分類,同?一類請求將發往同?一
個 upstreamserver ,使?用 consistent 參數, 將
使?用 ketama ?一致性 hash 算法,適?用于后端
是 Cache 服務器?(如 varnish )時使?用,提?高緩存
服務器?的緩存命中率
Syntax: hash key [consistent];
Default: —
Context: upstream
16.6 keepalive
為每個worker進程保留留的空閑的?長連接數量量,可節約
nginx端?口,并減少連接管理理的消耗
Syntax: keepalive connections;
Default: —
Context: upstream
16.7 health_check (商業版)
健康狀態檢測機制
Syntax: health_check [parameters];
Default: —
Context: location
參數:
interval=time # 檢測的頻率,默認為5秒
fails=number # 判定服務器?不不可?用的失敗
檢測次數;默認為1次
passes=number # 判定服務器?可?用的失敗檢
測次數;默認為1次
uri=uri # 做健康狀態檢測測試的?目標uri;
默認為/match=NAME:健康狀態檢測的結果
評估調?用此處指定的match配置塊
16.8 match (商業版)
對 backend server 做健康狀態檢測時,定義其結
果判斷機制
Syntax: match name { ... }
Default: —
Context: http
參數
status code[ code ...] # 期望的響應狀
態碼
header HEADER[operator value] # :期
望存在響應?首部,也可對期望的響應?首部的
值基于?比較操作符和值進?行行?比較
body # 期望響應報?文的主體部分應該有的內
容
轉載于:https://www.cnblogs.com/momenglin/p/11181810.html
總結
以上是生活随笔為你收集整理的Nginx中ngx_http_upstream_module模块的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 在win7怎么修复引导文件在哪里 Win
- 下一篇: docker中部署Nginx