Ehcache 是一个开源的高性能缓存,拥有很高的拓展性和伸缩性,广泛使用各种 Java 项目中(如 Hibernate 默认使用 Ehcache作为二级缓存),在目前基于 Java 的缓存方案里,几乎是性能最高的实现。
配置Ehcache有两种方式:编码配置、 配置文件配置
- 通过构建器模式定义了别名为feilcache的缓存,key、value均为String。JVM byted-size 堆缓存设置大小。
- 进行init初始化。
- 通过别名获取缓存并添加缓存。
- 最后不要忘记最重要的关闭资源。
Ehcache3.x提供了一种分层模型。ehcache 的缓存储存主要分为以下3层:
- heap:JVM byted-size 堆缓存,速度最快;
- off-heap:JVM 堆外内存,速度低于 heap,但是高于 disk;
- disk:磁盘储存,速度最低,相对于 heap ,off-heap可以分配大量资源空间;
上面的例子分配了非常少量的堆外。请记住,堆外存储的数据必须被序列化和反序列化 - 因此比堆慢。因此,您应该支持大量数据的堆外堆,其中堆上会对垃圾收集产生太严重的影响。不要忘记-XX:MaxDirectMemorySize根据您打算使用的堆外大小在java选项中定义该选项。
如果您希望使用磁盘存储(例如对于持久Cache实例),则必须提供将数据存储在磁盘上的CacheManagerBuilder.persistence(String)静态方法的位置。
定义磁盘的资源池。第三个参数是一个布尔值,用于设置磁盘池是否持久。设置为true时,池是持久的,当设置为false时,池不是持久的。如果在没有第三个布尔参数的情况下使用此方法,则池不是持久的。
<cache alias="simpleCache" uses-template="myDefaults" />
为了解析XML配置,您可以使用以下类型:
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.bianchenghao6.com/h6javajc/5626.html