我開始架構師以下要求的項目:MNesia在斷開操作後是否支持同步?
- 整個系統將跨多個物理節點分佈在WAN
- 每個節點將使用和操縱一組通用的數據記錄
- 對這些記錄操作必須是有彈性的網絡中斷
我正在考慮使用的Mnesia /二郎作爲基礎平臺進行這個項目,但我想知道它(的Mnesia)如何能夠處理對數據集同時進行斷開連接的衝突操作。
的說明性情形:
- 節點A和B具有連接和一個空的數據集。
- 節點A添加記錄(1,ABC)。
- 在這裏,記錄集應該透明地同步,現在節點B也有記錄(1,ABC)。
- 它們之間的網絡連接丟失。
- 節點A將記錄更改爲(1,DEF)。
- 節點B(稍後的時間戳)將記錄更改爲(1,GHI)。
- 網絡連接恢復
- 預期:透明同步後,兩個節點都包含記錄(1,GHI)。
爲了簡化,我們假設一個完整的變更歷史不要求(例如,它是記錄1用於包含ABC或DEF並不重要,這是唯一重要的是它現在包含GHI)。
這是Mnesia的開箱即用(或微不足道的實現)功能嗎?
步驟6的行爲是什麼?如果網絡連接恢復,它將如何應對衝突? – Greg 2011-02-18 09:50:25