DB2的Primary和Standby之間是通過發(fā)送心跳信號(hào)來檢測(cè)對(duì)方是否存在的?
成都創(chuàng)新互聯(lián)公司是專業(yè)的孟連網(wǎng)站建設(shè)公司,孟連接單;提供成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站,網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行孟連網(wǎng)站開發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!
與此心跳有關(guān)的幾個(gè)db2pd -db xxx -hadr 監(jiān)控指標(biāo)?
HEARTBEAT_INTERVAL(seconds) = 30?
HEARTBEAT_MISSED = 0?
HEARTBEAT_EXPECTED = 58588?
HADR_TIMEOUT(seconds) = 120?
? ? ? ? ? ? ? ? ?
需要查看的是 HEARTBEAT_MISSED/HEARTBEAT_EXPECTED的比值?
HADR_TIMEOUT是DB CFG的一個(gè)參數(shù),這里設(shè)置為 120? ? ? ? ? ? ?
HEARTBEAT_INTERVAL 計(jì)算方法: HADR_TIMEOUT/4 = 120/4=30
HEARTBEAT_INTERVAL的最大值是 30秒
推薦的 hadr_timeout 參數(shù)設(shè)置至少為 60 秒。
HADR_TIMEOUT 推薦值是120 seconds. 計(jì)算以后 HEARTBEAT_INTERVAL 是 30 秒.?
設(shè)置 hadr_timeout參數(shù)時(shí),要考慮網(wǎng)絡(luò)穩(wěn)定性和機(jī)器響應(yīng)時(shí)間。如果網(wǎng)絡(luò)擁有不規(guī)則或長(zhǎng)時(shí)間傳輸延遲,則應(yīng)使用更長(zhǎng)的超時(shí)設(shè)置。?
每一次心跳,在Primary端都會(huì)產(chǎn)生一個(gè) PEER_WINDOW_END值,并且發(fā)送到Standby端。?
如果Primary端在 PEER_WINDOW_END之前失敗,可以執(zhí)行一個(gè)沒有數(shù)據(jù)損失的故障轉(zhuǎn)移 (TAKEOVER BY FORCE 命令添加了一個(gè) PEER WINDOW ONLY 選項(xiàng))?
hadr_peer_window設(shè)置 >= 響應(yīng)時(shí)間 + 安全 邊際 + 心跳間隔?
? ? 其中:?
? ? 響應(yīng)時(shí)間 = 自動(dòng)化軟件探測(cè)到失敗并調(diào)用 HADR 接管的預(yù)計(jì)時(shí)間?
? ? 安全邊際 = 5 秒,主 - 備用機(jī)器時(shí)鐘同步的安全邊際?
? ? 心跳間隔 = MIN(hadr_timeout值 /4,hadr_peer_window值 /4,30 秒)?