我正在尝试开发一个基于网络安全分散复制的分布式系统。我正在寻找具有以下要求的 java 库:
库应该能够以分散的方式初始化 n 个节点(没有主节点或从节点)。它应该能够在启动时从网络故障中恢复。例如:我尝试启动一个有 5 个节点的网络,但只有 3 个启动。
一旦初始化,它应该能够检测到节点丢失,通知用户,以便用户可以在应用程序前端采取一些补救措施并从中恢复。我不担心任何新节点或故障节点再次加入集群。但如果它也支持这一点,那就太好了。
它应该允许 P2P 通信。如果它能够同时支持高效的 P2P 和组播,那就太好了。
允许在 Aleph 中的节点之间发送 Runnable 消息和可序列化对象。Alepha 很好,它不支持节点故障/恢复。
基本上,我将根据活动节点列表创建节点的动态仲裁,并在不同的仲裁上复制对象。我的框架将允许用户谈论这些法定人数并访问对象。如果节点发生故障,我需要使用新的活动节点列表重建仲裁。我想专注于仲裁算法并在网络功能上节省能源。请为此目的推荐一些合适的库。如果您也知道任何类似的仲裁解决方案,请也参考一下。