MongoDB遵循主從架構。資料寫入主節點,然后復制到從節點。據說 Mongo 提供了可用性的一致性,考慮一下,差異可以解釋為:
當主節點宕機時,從節點必須決定選擇哪一個作為主節點,這需要時間,因此系統在該時間視窗內不可用。
另一個原因可能是:在復制期間,節點被鎖定,以便將資料復制到所有從屬服務器以實作高一致性,如果我們使用從屬服務器進行讀取,則鎖定意味著不可用。
但這可能會因配置而異,因為 Mongo 允許配置從屬的角色。我們可以將它們僅用于復制目的(在這種情況下,可能不需要從屬鎖定,因為讀取請求僅由主服務器提供,并且復制可以異步發生)或者我們也可以擁有用于讀取操作的從屬(在這種情況下,鎖定可能發生寫入時需要以保持一致性)。
所以我看到有很多可能的變化。
那么我們有定義這一切的基本規則嗎?
uj5u.com熱心網友回復:
MongoDB 允許您根據用例要求自定義 CAP 定理行為,您可以通過以下設定調整一致性/可用性/性能:
讀取偏好 的可能值:
["primary","primaryPreferred","secondary","secondaryPreferred","nearest"]
寫關注的可能值:
["majority",0,1,2,n]
閱讀關注的可能值:
["local","available","majority","linearizable","snapshot"]
記錄可能的值:
["true","false"]
此外,該問題之前已在此處詳細討論過
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/435829.html
上一篇:MongoDB服務器上的資料加載來自jupyternotebook,但不是來自腳本
下一篇:作業表沒有激活
