2012-12-19 46 views
19

我正在尋找一個提供最基本的集羣要求的庫。 由於狀態複製要求非常小,因此希望這個庫可以脫離全面的狀態複製解決方案(ZooKeeper)。領導選舉和故障轉移檢測Java庫

  1. 使用播種和閒聊發現其他集羣成員。 (網絡沒有組播)
  2. 基於REST over HTTP/S的LAN和WAN網絡的故障轉移檢測算法。 (設計防火牆,多站點集羣)。
  3. 基於法定人數的領導人選舉,包括裂腦檢測。 (多站點集羣)
  4. 希望用Java或JVM兼容語言編寫。
  5. 僅從領導者讀取/寫入(任何寫入領導者節點都會複製到所有其他節點)
  6. 可忽略不計的讀取/寫入流量。
+0

如果你不想ZooKeeper,我猜[curator](https://github.com/Netflix/curator)不是一個選項? –

+0

這是一個矯枉過正的問題。 ZooKeeper主動 - 主動複製具有可伸縮性權衡。 – itaifrenkel

回答

4

最後我看了(幾年前)JGroups提供了一個很好的集合創建和管理集羣的實用程序。它是作爲JBoss的一部分建立起來的,但附帶很少(習慣了)。不確定它會打勾所有的盒子,但值得一試。

+0

是否有使用jgroups over wan的例子?它可以像網絡連接一樣使用http嗎? – itaifrenkel

4

JGroups不能使用HTTP連接;它通過UDP(通過多播)或TCP(通過幾種方法之一,包括gossip and relay)在IP級別上管理羣集。使用其中一種TCP方法通過WAN使用JGroups。