HAProxy 心跳檢查問題

2021-06-19 09:41:13 字數 681 閱讀 8748

haproxy可以提供到對後端伺服器的心跳檢查(即埠監測),預設情況下沒有,需要手動在配置檔案中配置,例如:

backend new_server

server first  10.1.1.1:1080 check inter 1000

server second 10.1.1.2:1080 check inter 1000

check inter 

心跳檢查配置項,1000以毫秒為單位,總體意思為:每隔1000ms檢查一次

10.1.1.1:1080和

10.1.1.2:1080

程序是否存活。檢查方式為:使用tcp連線後台伺服器端口,如果能建立連線,就認為存活且馬上關閉連線。

然而,在使用中發現乙個問題:

1.4.23版本的haproxy在進行心跳檢查後,關閉為了進行心跳時建立的tcp連線會傳送乙個rst分組。這個本身不會影響後端伺服器的正常功能,但是絕大多數伺服器收到這個分組後,會丟擲異常,如果你的日誌列印這種異常就會導致日誌量很大(因為心跳很頻繁,且每次心跳就會查收這個異常),且這種異常不容易定位,導致你」人心惶惶「!!!

1.4.24版本中修復了這個問題,它在心跳檢查tcp連線時,沒有達成三次握手,不向伺服器傳送最後乙個ack分組,就馬上傳送rst分組,這樣伺服器認為連線沒有建立,不會丟擲異常。

如果大家要使用haproxy建議使用1.4.24版本。

虛擬記憶體檢查問題

報出的問題 報錯的原因,虛擬記憶體超出了限制,虛擬記憶體不同於物理記憶體,可以超出,所以我們在這裡要配置允許超過。container pid 3007,containerid container 1599018748796 0004 01 000004 is running 342252032b b...

kotlin中的空指標檢查問題

android系統上崩潰率最高的異常型別就是空指標異常。我們需要知道的是 空指標是一種不受程式語言檢查的執行時異常,只能有程式設計師主動通過邏輯判斷來避免。舉個例子,對於一段簡單的呼叫引數的j a 我們要使 安全性更高,更穩妥的做法就是再呼叫引數的方法之前先進行乙個判空處理。如下 public vo...

跟查問題總結

最近一直在跟測問題,每次出現問題,心裡面多多少少會有點難受。程式設計師最不喜歡的就是出現bug,我們永遠覺著我們的 不可能出現bug。最簡單的不出bug就是不寫 但當確確實實出現問題出現bug的時候,我們又不得不親自參與解決問題。通過日誌記錄查詢到出現段錯誤的函式。經查發現該函式中有乙個全域性變數為...