Cacheonix——Java的分布式集群缓存框架
发布日期:2016-4-25 14:4:50
Java分布式缓存系统Ehcache,可以有效地减轻数据库的读写负担,提高Web系统的吞吐率。本文介绍的Cacheonix同样也是一个基于Java的分布式集群缓存系统,它同样也可以帮助你实现分布式缓存的部署。 Cacheonix的特点如下所示: 可靠的分布式 Java 缓存 通过复制实现高可用性 支持泛型的缓存 API 可与 ORM 框架集成 支持非多播网络 使用数据分区实现负载均衡 快速的本地 Java 缓存 高性能计算 分布式锁机制 Cacheonix的架构图 如下所示: Cacheonix分布式缓存XML配置 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.cacheonix.com/schema/configuration http://www.cacheonix.com/schema/cacheonix-config-2.0.xsd"> Cacheonix缓存的存取 从配置中获取Cacheonix实例 /** * Tester for CacheManager. */ public final class CacheonixTest extends TestCase { private Cacheonix cacheonix; /** * Tests getting an instance of CacheManager using a default Cacheonix configuration. */ public void testGetInstance() { assertNotNull("Cacheonix created in setUp() method should not be null", cacheonix); } /** * Sets up the fixture. This method is called before a test is executed. * * Cacheonix receives the default configuration from a cacheonix-config.xml found in a class path or * using a file that name is defined by system parameter cacheonix.config.xml. */ protected void setUp() throws Exception { super.setUp(); // Get Cacheonix using a default Cacheonix configuration. The configuration // is stored in the conf/cacheonix-config.xml cacheonix = Cacheonix.getInstance(); } /** * Tears down the fixture. This method is called after a test is executed. */ protected void tearDown() throws Exception { // Cache manager has be be shutdown upon application exit. // Note that call to shutdown() here uses unregisterSingleton // set to true. This is necessary to support clean restart on setUp() cacheonix.shutdown(ShutdownMode.GRACEFUL_SHUTDOWN, true); cacheonix = null; super.tearDown(); } } 读取缓存 Cacheonix cacheonix = Cacheonix.getInstance(); Cache cache = cacheonix.getCache("my.cache"); String cachedValue = cache.get("my.key"); 删除缓存 Cacheonix cacheonix = Cacheonix.getInstance(); Cache cache = cacheonix.getCache("my.cache"); String removedValue = cache.remove("my.key"); 设置缓存 Cacheonix cacheonix = Cacheonix.getInstance(); Cache cache = cacheonix.getCache("my.cache"); String replacedValue = cache.put("my.key", "my.value"); Cacheonix作为一款开源的分布式缓存框架,可以满足中型企业规模的系统架构,对提升系统性能有非常棒的作用。 下一条: Appboy 的数据密集型实践
|