假設我有一個Primary (A)
&兩個secondary (B, C)
。如果我正在使用write majority
進行寫入。可有一個人請解釋一下我下面疑惑: -在Mongo上編寫多數和二級讀取偏好
- 比方說,寫,用
majority
完成,它在A
&B
的數據更新,寫還不傳播到C
。在如果 讀來使用secondary
或secondary preferred
將查詢從它具有最新的數據或 蒙戈不能出示擔保這和讀可以從C
返回過時的數據B
服務的同一數據這個時候。 - 讓我們假設寫一次是用大多數人再次完成的,假設 的寫入是在
A
上完成的,然後在 的第二個B
之一中正在進行寫入。如果當時讀取將被阻止 或它會提供C
陳舊的數據? - 比方說,我已經拿出了第二個
C
,同樣的案例在 進展中,正如我們在上述案例中提到的那樣。從 次要B
讀取將被阻止,直到寫入完成B
或讀取 將不會被阻止和陳舊的數據將從B
提供?
環境
- 蒙戈版 - 3.0.9
- 存儲引擎 - MMAPv1
即使我設置寫爲多數(寫入'Primary'&大部分'Secondary'的),如果我讀通過設置'讀preference'設定爲'secondary'或'次級優選的'。 mongo不保證讀取將從寫入數據的次要服務器中提供。即使在相同數據的寫入過程中,讀取也不會被阻止? – tuk
我只是想知道這是否回答你的問題? – notionquest
我在問我的理解是否正確 - *即使我將寫作設置爲多數(寫入小學和大多數中學),並且如果我通過將讀取首選項設置爲第二或第二首選來讀取。 mongo不保證讀取將從寫入數據的次要服務器中提供。即使正在寫入同一數據,讀數也不會被阻止?* – tuk