Java 缓存框架,Ehcache 3.0.0.m4 发布
EhCache 是一个纯 Java 的进程内缓存框架,具有快速、精干等特点
EhCache 的主要特性有:
- 快速;
- 简单;
- 多种缓存策略;
- 缓存数据有两级:内存和磁盘,因此无需担心容量问题;
- 缓存数据会在虚拟机重启的过程中写入磁盘;
- 可以通过 RMI、可插入 API 等方式进行分布式缓存;
- 具有缓存和缓存管理器的侦听接口;
- 支持多缓存管理器实例,以及一个实例的多个缓存区域;
- 提供 Hibernate 的缓存实现;
- 等等 …
由于 EhCache 是进程中的缓存系统,一旦将应用部署在集群环境中,每一个节点维护各自的缓存数据,当某个节点对缓存数据进行更新,这些更新的数据无法在其它节点中共享,这不仅会降低节点运行的效率,而且会导致数据不同步的情况发生。例如某个网站采用 A、B 两个节点作为集群部署,当 A 节点的缓存更新后,而 B 节点缓存尚未更新就可能出现用户在浏览页面的时候,一会是更新后的数据,一会是尚未更新的数据,尽管我们也可以通过 Session Sticky 技术来将用户锁定在某个节点上,但对于一些交互性比较强或者是非 Web 方式的系统来说,Session Sticky 显然不太适合。所以就需要用到 EhCache 的集群解决方案。
EhCache 从 1.7 版本开始,支持五种集群方案,分别是:
- Terracotta
- RMI
- JMS
- JGroups
- EhCache Server
Ehcache 3.0.0.m4 发布,此版本有以下改进:
-
简化和重构 write-behind 实现
-
配置 Cache 时候可以传递 CacheLoaderWriter, Serializer 和 Copier 的实例
-
Handling of exceptions from user provided Expiry, EvictionVeto and EvictionPrioritizer,
-
OSGi readiness - that is the ehcache 3 jar carries valid bundle information in its manifest,
-
Fixes to tiering which would expose internal state,
-
Many more improvements and bug fixes
详细信息请查看发行页面:
https://github.com/ehcache/ehcache3/releases
下载地址如下: