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"); } }