我正在運行一個小型系統,它依靠Hazelcast以多播模式進行集羣,分佈式計算和消息傳遞(標準配置可在下載中找到)。我有許多作爲「核心」Hazelcast實例運行的服務器模塊,以及作爲Hazelcast「本機客戶端」實施的Java Swing應用程序。這一切都運行良好,我現在想要在生產中調試系統,因此需要運行兩個獨立的集羣(dev + prod),這就是我遇到問題的地方。多集羣的Java Hazelcast問題
根據documentation所有你需要的是使用單獨的組名+密碼的兩個集羣,我覺得這兩個集羣應該自動排序!這似乎適用於服務器模塊,但是當我試圖將「客戶端」 - 實例連接到prod環境時,我可以從prod中的某個服務器模塊的日誌中看到客戶端似乎成功連接:
INFO: [prod] received auth from Connection [/192.168.0.2:55863 -> null] live=true,
client=true, type=JAVA_CLIENT, this group name:prod, auth group name:prod,
successfully authenticated
但是,客戶端永遠不會顯示爲prod的成員。相反,我發現客戶已經成爲開發環境的成員,即使認證是針對產品進行的!
對於我來說,兩個羣集的非自然混合對我來說顯然是一個巨大的問題,也是一個不爭的事實。有沒有人知道我是否有任何問題,或者是否有任何配置更改可以解決問題?
絕對如此。說得通。現在我的時間有點短了,但我會在下週初嘗試你的建議並恢復。非常感謝你爲快速回答Fuad。 – hgus1294 2011-05-20 14:17:43
你是對的。我在我的客戶端中使用默認配置「dev」啓動成員的代碼。我最終將客戶切換到超級客戶端,因爲這對我來說似乎更容易。我的核心模塊(成員)需要知道已連接的客戶端,並且本地客戶端「對於成員來說不太明顯」。無論哪種方式,超級客戶端實施都能很好地滿足我的需求。非常感謝你的幫助。 – hgus1294 2011-05-23 16:58:59
http://docs.hazelcast.org/docs/1.9/manual/html/ch05s03.html酷 – 2017-09-21 18:55:42