本節將詳細說明後端實例的狀態檢查。
Web Server 7.0 中的 route_offline_thread 可執行後端實例的狀態檢查。它會傳送 OPTIONS HTTP 請求,以查找所有作用中的後端實例。若伺服器有所回應,即表示後端實例為作用中。在初始階段後,執行緒會每隔 60 秒執行一次離線後端實例的狀態檢查 (無法配置持續時間)。route_offline_thread 此時會嘗試連線至離線實例,並在連線成功時傳送 OPTIONS HTTP 請求。實例若有所回應,一旦從當機狀態復原後, route_offline_thread 會立即將它視為線上狀態。因此,執行緒對系統與後端實例都不會造成任何效能上的影響。
在將後端實例視為線上實例後,若是後端實例關閉或當機,route_offline_thread 將無法追蹤。當 Web 伺服器反向代理伺服器參數選擇此種實例時,為了處理請求,會導致讀取或傳送失敗,表示實例的連線中斷。
您可以使用 obj.conf 檔案中的 http-client-config ObjectType 函數,定義回應逾時值。
ObjectType fn="http-client-config" timeout="400" |
預設逾時值為 300 秒。
定義回應逾時值後,若後端實例的連線超過 400 秒沒有回應,反向代理伺服器參數即會結束該連線,並將其視為離線狀態。
當反向代理伺服器參數嘗試對沒有回應或忙碌的後端實例建立連線時,等候連線回應的最長時間為五秒,接著即會將此實例視為離線狀態。