2014-07-23 52 views
0

我正在使用hazelcast 3.2.2社區版。如何在由於hazelcast中的網絡分區而發生分裂大腦時從db重新加載映射

我正在用榛子進行各種測試。我有兩個單獨的虛擬機,它們運行兩個hazelcast實例作爲形成一個集羣的linux服務。在這種情況下,我將把它們稱爲HAZ-A和HAZ-B。

下面是測試流(link裝置Physical link在此上下文中):

1)HAZ-A is up, HAZ-B is up.

2)Link down of HAZ-A, HAZ-B link is up.

執行某些操作說的用戶的改變密碼,所以HAZ-B將有兩個版本的用戶對象(其中一個將HAZ-A的版本1備份,另一個將更新版本說版本2)。

3)Link down of HAZ-B, HAZ-A link is already down. Hence links of both HAZ-A and HAZ-B are down.

4)Restore link of HAZ-A. Link is already down of HAZ-B.

執行某些操作說用戶修改密碼,在這個時候我正在stale數據,因爲HAZ-A並沒有得到一個機會與同步HAZ-B。

所以這裏的要點是:

我們可以實現/注入任何聽衆的將檢測 接口向上/向下或鏈接向上/向下,並在檢測,我們可以簡單地 重新同步數據從數據庫?

回答

0

從文檔看起來既HAZ-A和HAZ-B將從數據庫加載數據,並使他們最終看到對方,他們將合併

從第18章

如果MapStore正在使用中,那些丟失的分區將從某個數據庫重新加載,從而使每個小型集羣都完成。然後,每個小型羣集將重新創建缺失的主分區,並繼續存儲其中的數據,其中包括其他節點上的備份。

相關問題