数据网格平台 Infinispan 5.1.2.CR1 发布

openkk 12年前
     <p>Infinispan 是个开源的数据网格平台。它公开了一个简单的数据结构(一个Cache)来存储对象。虽然可以在本地模式下运行Infinspan,但其真正的价值在于分布 式,在这种模式下,Infinispan可以将集群缓存起来并公开大容量的堆内存。这可比简单的复制强大的多,因为它会为每个结点分配固定数量的副本——服 务器故障的一种恢复手段——同时还提升了可伸缩性,这是由于存储每个结点所需的工作量是与集群大小息息相关的。</p>    <p>Infinispan提供了一种简单的机制来利用大容量的堆内存。如果对每个结点维护一个拷贝,假如集群当中有100个结点,每个结点分配2GB的堆内存, 那么网格中的任何实例都能使用多达100GB的空间,这可都是内存,显然速度会非常快。同时Infinispan还兼容于JTA,这样它就能很好地处理事务 了。我们还有一个超级强大的异步API,它可以保证同步的网络调用以及异步调用的并行性及可伸缩性。比方说:Future f = cache.putAsync(k, v) 可以阻塞线程,再调用f.get()可以让网络调用继续进行或是忽略掉f。更为重要的是,线程还可以做别的事情,这一点非常有用。然后再回来通过调用 f.get()来检查该网络调用是否能继续进行。可以将其看作是NIO与传统的阻塞性IO之间的关系。</p>    <p>Infinispan公开了一个CacheStore接口和几个高性能的实现,包括JDBC CacheStores、基于文件系统的CacheStores以及Amazon S3 CacheStores等等。CacheStores可用作“温启动(warm starts)”或是确保网格中的数据在重启后依然可用,同时在内存耗尽时还能将数据写到磁盘上。</p>    <p>主要特点:</p>    <ul>     <li>大量的堆体</li>     <li>极高的可扩展性</li>     <li>快速轻量级核心</li>     <li>不仅仅支持Java(PHP,Python,Ruby,C…)</li>     <li>支持Compute Grids</li>     <li>管理是关键:当你在grid上运行几百个服务时,实现管理是必须的</li>    </ul>    <p> </p>    <p>基于社区的要求,Infinispan 绝对发布 5.1 Brahma 系列的另外一个小更新版本 5.1.2,此次发布是首个 CR 版本。该版本修复了文档、模型方面的问题;为所有演示增加了远程 JMX 监控选项;简化了 Infinispan 的使用;升级了一些重要的第三方库,例如 JGroups ,更多的性能提升,特别是在状态转移上。</p>    <p>另外该版本新增系统属性 (- <span style="font-family:'Courier New', Courier, monospace;">Dinfinispan.unsafe.allow_jdk8_chm=true</span> ) 用于使用将在 JDK8 中出现的 ConcurrentHashMapV8 替换 Java 现有的并发哈希表 ConcurrentHashMap,该新类在内存使用效率上优于老版本</p>    <p>更多关于该版本的改进请看<a href="https://issues.jboss.org/secure/ReleaseNote.jspa?projectId=12310799&version=12319011" target="_blank">这里</a>。</p>    <p>下载地址:<a href="/misc/goto?guid=4958190103248123242">here</a></p>