詳解Nginx 被動(dòng)檢查服務(wù)器的存活狀態(tài)

介紹
通過(guò)發(fā)送定期健康檢查來(lái)監(jiān)控上游組中 HTTP 服務(wù)器的健康狀況。Nginx 可以持續(xù)測(cè)試您的上游服務(wù)器,避免出現(xiàn)故障的服務(wù)器,并將恢復(fù)的服務(wù)器優(yōu)雅地添加到負(fù)載均衡組中。
被動(dòng)健康檢查
對(duì)于被動(dòng)健康檢查,Nginx 會(huì)在事務(wù)發(fā)生時(shí)對(duì)其進(jìn)行監(jiān)控,并嘗試恢復(fù)失敗的連接。如果事務(wù)仍然無(wú)法恢復(fù),Nginx 將服務(wù)器標(biāo)記為不可用并暫時(shí)停止向其發(fā)送請(qǐng)求,直到它再次標(biāo)記為活動(dòng)狀態(tài)。
上游服務(wù)器標(biāo)記為不可用的條件是通過(guò)上游塊中服務(wù)器指令的參數(shù)為每個(gè)上游服務(wù)器定義的:
fail_timeout:設(shè)置要將服務(wù)器標(biāo)記為不可用,必須進(jìn)行多次失敗嘗試的時(shí)間,以及服務(wù)器標(biāo)記為不可用的時(shí)間(默認(rèn)值為10秒)。max_fails:設(shè)置在fail_timeout期間必須發(fā)生的失敗嘗試次數(shù),以便將服務(wù)器標(biāo)記為不可用(默認(rèn)值為1次嘗試)。
在以下示例中,如果Nginx在30秒內(nèi)3次未能向服務(wù)器發(fā)送請(qǐng)求或未收到來(lái)自服務(wù)器的響應(yīng),則會(huì)在30秒內(nèi)將服務(wù)器標(biāo)記為不可用:
upstream backend {
server backend1.example.com;
server backend2.example.com max_fails=3 fail_timeout=30s;
}
注意 :如果組中只有一臺(tái)服務(wù)器,則會(huì)忽略fail_timeout和max_fails參數(shù),并且服務(wù)器永遠(yuǎn)不會(huì)標(biāo)記為不可用。
服務(wù)器慢啟動(dòng)
最近恢復(fù)的服務(wù)器很容易被連接淹沒(méi),這可能會(huì)導(dǎo)致服務(wù)器再次被標(biāo)記為不可用。慢啟動(dòng)允許上游服務(wù)器在恢復(fù)或可用后逐漸從零恢復(fù)其權(quán)重到其標(biāo)稱(chēng)值。這可以通過(guò) slow_start 上游server指令的參數(shù)來(lái)完成:
upstream backend {
server backend1.example.com slow_start=30s;
server backend2.example.com;
server 192.0.0.1 backup;
}
注意:如果組中只有一個(gè)服務(wù)器,
slow_start則忽略該參數(shù)并且該服務(wù)器永遠(yuǎn)不會(huì)標(biāo)記為不可用。慢啟動(dòng)是 NGINX Plus(商業(yè)版) 獨(dú)有的。
到此這篇關(guān)于Nginx 被動(dòng)檢查服務(wù)器的存活狀態(tài)的文章就介紹到這了,更多相關(guān)Nginx檢查服務(wù)器存活狀態(tài)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Nginx之rewrite實(shí)現(xiàn)URL重寫(xiě)方式
文章介紹了Nginx的rewrite模塊,包括其重要性、相關(guān)指令(如set、if、break、return、rewrite)的使用方法和作用域,并舉例說(shuō)明了這些指令的實(shí)際應(yīng)用場(chǎng)景,如域名重定向和防盜鏈處理2025-03-03
Nginx的偽靜態(tài)配置中使用rewrite來(lái)實(shí)現(xiàn)自動(dòng)補(bǔ)全的實(shí)例
這篇文章主要介紹了Nginx的偽靜態(tài)配置中使用rewrite來(lái)實(shí)現(xiàn)自動(dòng)補(bǔ)全的實(shí)例,文中對(duì)rewrite的相關(guān)參數(shù)和正則表達(dá)使用也做了介紹,需要的朋友可以參考下2015-12-12
Nginx 出現(xiàn) 403 Forbidden 最終解決方法
這篇文章給大家介紹了Nginx 出現(xiàn) 403 Forbidden 最終解決方法,下面分步驟給大家介紹的非常詳細(xì),感興趣的的朋友一起看看吧2017-08-08
NGINX?權(quán)限控制文件預(yù)覽和下載的實(shí)現(xiàn)原理
我們知道,使用nginx作為文件下載服務(wù)器,可以極大地降低對(duì)后端Java服務(wù)器的負(fù)載沖擊,但是nginx本身并不提供授權(quán)控制,這下該如何操作呢,下面小編給大家?guī)?lái)了NGINX?權(quán)限控制文件預(yù)覽和下載的實(shí)現(xiàn)原理,感興趣的朋友跟隨小編一起看看吧2022-01-01
詳解Nginx服務(wù)器中HTTP Headers相關(guān)的模塊配置使用
這篇文章主要介紹了詳解Nginx服務(wù)器中HTTP Headers相關(guān)的模塊配置使用,包括ngx_http_headers_module與它的增強(qiáng)版ngx_headers_more的配置使用講解,需要的朋友可以參考下2016-01-01

