Java中的分布式Hashmap或分布式信息存储

hea*_*ach 3 java dht

有人知道分布式哈希映射(DHT)的好java框架吗?

前段时间我和Overlay Weaver一起工作,但是这里缺少一个好的文档,所以我只用它来制作一个丑陋的黑客原型......但现在我需要可靠的代码.或者是否有人为OverlayWeaver找到了一个好的文档?

如果dht框架支持Chord或Kademlia并且可以在我的java应用程序中调用它将是完美的.

或者有人知道更好的方法来保存分布式系统中可靠且故障安全的短字符串数据吗?

was*_*ren 6

我认为Hazelcast适用于这种情况.它实际上不需要设置(超过你需要将依赖项添加到Hazelcast jar).以下代码示例显示了如何设置共享Map.

// Code in process 1
Config cfg = new Config();
HazelcastInstance instance = Hazelcast.newHazelcastInstance(cfg);
Map<Integer, String> sharedData = instance.getMap("shared");
sharedData.put(1, "This is shared data");

// Code in process 2
Config cfg = new Config();
HazelcastInstance instance = Hazelcast.newHazelcastInstance(cfg);
Map<Integer, String> sharedData = instance.getMap("shared");
String theSharedString = sharedData.get(1);
Run Code Online (Sandbox Code Playgroud)

Hazelcast支持各种共享数据结构包括Map,Queue,List,AtomicLong,IdGenerator的文档是好的,在我的经验中实现是固体.

如果您正在使用一个理智的构建环境(例如Maven),那么以下依赖项就是开始所需的全部内容:

<dependency>
    <groupId>com.hazelcast</groupId>
    <artifactId>hazelcast</artifactId>
    <version>3.4</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)