Hazelcast - 数据分发和集群平台


Apache
跨平台
Java

软件简介

Hazelcast是一个高度可扩展的数据分发和集群平台,可用于实现分布式数据存储、数据缓存。特性包括:

  • 提供java.util.{Queue, Set, List, Map}分布式实现。

  • 提供java.util.concurrency.locks.Lock分布式实现。

  • 提供java.util.concurrent.ExecutorService分布式实现。

  • 提供用于一对多关系的分布式MultiMap。

  • 提供用于发布/订阅的分布式Topic(主题)。

  • 通过JCA与J2EE容器集成和事务支持。

  • 提供用于安全集群的Socket层加密。

  • 支持同步和异步持久化。

  • 为Hibernate提供二级缓存Provider 。

  • 通过JMX监控和管理集群。

  • 支持动态HTTP Session集群。

  • 利用备份实现动态分割。

  • 支持动态故障恢复。

示例代码:

import com.hazelcast.config.Config;
import com.hazelcast.core.Hazelcast;
import com.hazelcast.core.HazelcastInstance;
 
import java.util.concurrent.ConcurrentMap;
 
public class DistributedMap {
    public static void main(String[] args) {
        Config config = new Config();
        HazelcastInstance h = Hazelcast.newHazelcastInstance(config);
        ConcurrentMap<String, String> map = h.getMap("my-distributed-map");
        map.put("key", "value");
        map.get("key");
        //Concurrent Map methods
        map.putIfAbsent("somekey", "somevalue");
        map.replace("key", "value", "newvalue");
    }
}