當與上游的互動出現錯誤時,nginx並不想立刻認為這個請求處理失敗,而是試圖多給上游伺服器一些機會,可以重新向這台或者另一台上游伺服器發起連線、傳送請求、接受響應,以避免網路故障。ngx_http_upstream_next方法在結束請求之前,會檢查ngx_peer_connection_t結構體的tries成員,tries成員會初始化為每個連線的最大重試次數,每當這個連線與上游伺服器出現錯誤時,就會把tries減1。在出錯時,ngx_http_upstream_next會首先檢查tries,如果它減到0,才會真正的呼叫ngx_http_upstream_finalize_request方法結束請求,否則不會結束請求,而是呼叫ngx_http_upstream_connect方法重新向上游發起請求。
實踐中的配置
nginx可以通過設定max_fails和fail_timeout對節點失敗的嘗試次數和失效時間進行設定。max_fails為最大嘗試失敗次數;fail_timeout為失效時間,在達到最大嘗試次數後,在fail_timeout時間範圍內節點被置為失效,除非所有節點都失效,否則該時間內,節點不進行恢復,當超過失效時間(或者所有節點都失效)後,該節點重新置為有效,重新探測。
Nginx之Memcached上游伺服器
memcached是高效能的分布式記憶體快取伺服器。一般的使用目的是,通過快取資料庫查詢結果,減少資料庫訪問次數,以提高動態web應用的速度 提高可擴充套件性。在nginx中,memcached模組預設是開啟的,它負責與memcached守護程序通訊。因此,客戶端和memcached守護程序之間沒有...
Nginx設定TCP上游伺服器的SSL配置
本文介紹了如何為nginx plus和接受tcp連線的負載均衡的伺服器組設定ssl ssl終端意味著nginx plus充當與客戶端連線的伺服器端ssl端點 它執行對請求的解密和對響應的加密,否則後端伺服器就必須這樣做。該操作稱為終止,因為nginx plus關閉了客戶端連線,並通過新建立的未加密連...
Nginx 搭建Nginx伺服器
在ip位址為192.168.4.5的主機上安裝部署nginx服務,並可以將nginx伺服器,要求編譯時啟用如下功能 支援ssl加密功能 設定nginx賬戶及組名稱均為nginx nginx伺服器公升級到更高版本。步驟一 構建nginx伺服器 1 使用原始碼包安裝nginx軟體包 root proxy...