亚欧色一区w666天堂,色情一区二区三区免费看,少妇特黄A片一区二区三区,亚洲人成网站999久久久综合,国产av熟女一区二区三区

  • 發布文章
  • 消息中心
點贊
收藏
評論
分享
原創

Nginx的upstream模塊配置詳解

2023-10-07 08:18:25
112
0

Nginx除了可以直接作為web服務器使用外,更多的情況是通過反向代理將請求轉發給上游服務器。Nginx模塊一般被分成三大類:handler、filter和upstream。利用handlerfilter,可以使nginx輕松完成任何單機工作。而upstream,將使nginx將跨越單機的限制,完成網絡數據的接收、處理和轉發。通過upstream可以實現服務的負載均衡規則,可以提高上游服務器的高可用性。

  1. 基本語法

upstream的基本語法如下,一個upstream需要設置一個名稱,這個名稱可以在server里面當作proxy主機使用

upstream default {
    server  php-fpm-tfphp:9000;
}

一個upstream可以設置多個server,通常情況下Nginx會輪詢每一個server,從而達到最基本的負載循環效果。

upstream default {
    server  tflinux_php-fpm-tfphp_1:9000;
    server  tflinux_php-fpm-tfphp_2:9000;
}
  1. max_fails

max_fails是最多出錯數量,可以為每一個server設置一個max_fails,如果請求server發生了錯誤則max_fails會加一,如果請求server錯誤次數達到了max_fails后,Nginx會標記這個server為故障狀態,后面就不會再去請求它了。

默認情況下,max_fails的次數是1次。

upstream default {
    server  tflinux_php-fpm-tfphp_1:9000 max_fails=5;
    server  tflinux_php-fpm-tfphp_2:9000 max_fails=3;
}
  1. fail_timeout

fail_timeout是故障等待超時時間,前面說過了max_fails是請求server錯誤次數,如果達到了max_fails次數之后server會被標記為故障狀態,那么多長時間會重新嘗試呢?這個fail_timeout就是這個時間了,在達到max_fails次數之后server進入故障狀態,而后在fail_timeout時間之后會被重新標記為正常狀態。

默認情況下,fail_timeout的時間是10秒。

upstream default {
    server  tflinux_php-fpm-tfphp_1:9000 max_fails=5 fail_timeout=100;
    server  tflinux_php-fpm-tfphp_2:9000 max_fails=3 fail_timeout=60;
}
  1. proxy_connect_timeout

proxy_connect_timeout是連接超時時間,如果連接不到就會報錯

proxy_connect_timeout 3s;
  1. proxy_next_upstream_timeout

proxy_next_upstream_timeout是一個upstream反向代理的故障等待時間,簡單說就是無論upstream內部如何進行重試,所有花費的時間加在一起達到了proxy_next_upstream_timeout時間的話,就會直接報錯,不會再繼續嘗試了。

proxy_next_upstream_timeout 60s;
  1. backup

backup為備用服務器參數,可以為一個upstream設置一個backup的server,在生產server全部都出問題之后,可以自動切換到備用server上,為恢復服務爭取時間。

backup的server不同于其他server,平時是不承載請求的,所以它應該是比較空閑的狀態,主要做應急處理使用

 

0條評論
作者已關閉評論
Mr. 油
92文章數
0粉絲數
Mr. 油
92 文章 | 0 粉絲
原創

Nginx的upstream模塊配置詳解

2023-10-07 08:18:25
112
0

Nginx除了可以直接作為web服務器使用外,更多的情況是通過反向代理將請求轉發給上游服務器。Nginx模塊一般被分成三大類:handler、filter和upstream。利用handlerfilter,可以使nginx輕松完成任何單機工作。而upstream,將使nginx將跨越單機的限制,完成網絡數據的接收、處理和轉發。通過upstream可以實現服務的負載均衡規則,可以提高上游服務器的高可用性。

  1. 基本語法

upstream的基本語法如下,一個upstream需要設置一個名稱,這個名稱可以在server里面當作proxy主機使用

upstream default {
    server  php-fpm-tfphp:9000;
}

一個upstream可以設置多個server,通常情況下Nginx會輪詢每一個server,從而達到最基本的負載循環效果。

upstream default {
    server  tflinux_php-fpm-tfphp_1:9000;
    server  tflinux_php-fpm-tfphp_2:9000;
}
  1. max_fails

max_fails是最多出錯數量,可以為每一個server設置一個max_fails,如果請求server發生了錯誤則max_fails會加一,如果請求server錯誤次數達到了max_fails后,Nginx會標記這個server為故障狀態,后面就不會再去請求它了。

默認情況下,max_fails的次數是1次。

upstream default {
    server  tflinux_php-fpm-tfphp_1:9000 max_fails=5;
    server  tflinux_php-fpm-tfphp_2:9000 max_fails=3;
}
  1. fail_timeout

fail_timeout是故障等待超時時間,前面說過了max_fails是請求server錯誤次數,如果達到了max_fails次數之后server會被標記為故障狀態,那么多長時間會重新嘗試呢?這個fail_timeout就是這個時間了,在達到max_fails次數之后server進入故障狀態,而后在fail_timeout時間之后會被重新標記為正常狀態。

默認情況下,fail_timeout的時間是10秒。

upstream default {
    server  tflinux_php-fpm-tfphp_1:9000 max_fails=5 fail_timeout=100;
    server  tflinux_php-fpm-tfphp_2:9000 max_fails=3 fail_timeout=60;
}
  1. proxy_connect_timeout

proxy_connect_timeout是連接超時時間,如果連接不到就會報錯

proxy_connect_timeout 3s;
  1. proxy_next_upstream_timeout

proxy_next_upstream_timeout是一個upstream反向代理的故障等待時間,簡單說就是無論upstream內部如何進行重試,所有花費的時間加在一起達到了proxy_next_upstream_timeout時間的話,就會直接報錯,不會再繼續嘗試了。

proxy_next_upstream_timeout 60s;
  1. backup

backup為備用服務器參數,可以為一個upstream設置一個backup的server,在生產server全部都出問題之后,可以自動切換到備用server上,為恢復服務爭取時間。

backup的server不同于其他server,平時是不承載請求的,所以它應該是比較空閑的狀態,主要做應急處理使用

 

文章來自個人專欄
文章 | 訂閱
0條評論
作者已關閉評論
作者已關閉評論
0
0