全部產品
Search
文件中心

ApsaraDB for MongoDB:為什麼高可用系統會觸發主備切換

更新時間:Jun 19, 2024

在MongoDB執行個體的運行過程中,當高可用系統監測到執行個體中的某個節點不可用,將觸發節點切換操作並以簡訊或站內通知的形式通知使用者。

收到的通知內容

【阿里雲】尊敬的****:您的ApsaraDB for MongoDB執行個體:dds-bp****(名稱:****)出現異常,高可用系統已經觸發切換,確保執行個體穩定運行。請檢查程式串連是否正常,建議設定自動重連機制以避免切換影響。

為什麼會收到該通知

ApsaraDB for MongoDB採用高可用架構:複本集執行個體中預設包含三個節點;分區叢集執行個體中的每個Shard節點都包含三個節點。其中,Primary節點及Secondary節點對外提供訪問地址,Hidden節點作為日常備節點保障高可用。 更多詳情請參見複本集架構分區叢集架構

常見原因如下:
  • 節點不可用:ApsaraDB for MongoDB支援節點健康狀態監測,當監測到執行個體中的某個節點不可用,則會觸發高可用切換,對節點進行切換操作(例如將Primary節點和Secondary節點進行互換),保障執行個體的高可用性。
  • 節點所在的機器下線:ApsaraDB for MongoDB執行個體中節點所在的機器出現異常,為了避免影響業務將機器進行下線處理,則會觸發高可用切換,對節點進行切換操作(例如將Primary節點和Secondary節點進行互換),保障執行個體的高可用性。

主備切換的影響

  • 將造成1次30秒內的串連閃斷。
  • 如果您的業務通過Primary節點的地址串連,那麼由於節點角色發生變化,將會對業務的讀寫操作造成影響,例如無法寫入資料。

業務部署建議

  • 為業務設計重連機制,串連閃斷後可自動重連,保障業務穩定運行。
  • 推薦生產環境的應用程式通過ConnectionStringURI地址串連資料庫。當某個節點出現故障時,不會因為主備切換而影響應用的讀寫操作,詳情請參見複本集執行個體串連說明分區叢集執行個體串連說明