美文网首页
ehcache配置说明

ehcache配置说明

作者: Q轩哥 | 来源:发表于2019-07-18 20:33 被阅读0次

必须属性:

name: Cache的唯一标识名称(缓存区名称,用以区别缓存区,必须唯一

maxEntriesLocalHeap:设置缓存在本地内存中最大缓存项数量,0没有限制

maxEntriesLocalDisk:磁盘中的最大对象数,默认为0不限制

eternal:是否永久有效,如果为true,timeouts将被忽略,element将永不过期

可选属性:

overflowToOffHeap:只能用于企业版本中。设置为true,缓存将使用非堆内存,非堆内存并非由java管理,与java垃圾回收无关。默认为false。

maxBytesLocalHeap:如果设置了这个属性,maxEntriesLocalHeap将不能被利用(定义保存在java虚拟机堆内存中的最大字节数)

maxBytesLocalOffHeap:只能用于企业版本中(设置本缓存区使用的非堆内存的大小。指定此属性,将默认设置overflowToOffHeap为true。如果特别指定了overflowToOffHeap=false,将禁止使用非堆内存)

maxBytesLocalDisk:像maxBytesLocalHeap属性,不过指定得是存储在本地磁盘上的缓存项最大可使用的字节数

timeToIdleSeconds:失效前的空闲秒数,当eternal为false时,这个属性才有效,0为不限制

timeToLiveSeconds:失效前的存活秒数,创建时间到失效时间的间隔为存活时间,当eternal为false时,这个属性才有效,0为不限制

diskExpiryThreadIntervalSeconds:清理保存在磁盘上的过期缓存项目的线程的启动时间间隔,默认120秒。

diskSpoolBufferSizeMB:这个参数设置DiskStore(磁盘缓存)的缓存区大小。默认是30MB。每个Cache都应该有自己的一个缓冲区(写入磁盘的内容将缓存在此区域,使用异步的方式写入磁盘;如果遇到OutOfMemory错误时,可以尝试减小这个值。改进磁盘写入性能时,尝试增加这个值;将日志级别开到trace,当DiskStore执行磁盘写入时,可以看到对应日志)

clearOnFlush:当调用flush()是否清除缓存,默认是true,即清空。

statistics:是否收集统计信息。如果需要监控缓存使用情况,应该打开这个选项。默认为关闭(统计会影响性能)。设置statistics="true"开启统计

memoryStoreEvictionPolicy:内存回收策略(当缓存项达到maxEntriesLocalHeap限制时,剔除缓存项的策略),默认回收策略是:LRU最近最少使用Least Recently Used,其他策略有:先进先出First In First Out,Less Frequently Used使用频率最低

copyOnRead:当缓存项被读出时,是否返回一份它的拷贝(返回对象是缓存中对象的拷贝)。默认fasle。

copyOnWrite:当缓存项被写入时,是否写入一份它的拷贝(写入缓存的是写入对象的拷贝)。默认false

(通过使用< persistence />子元素,可以配置缓存区的持久化策略,主要属性如下:)

strategy:配置缓存区持久化的类型,可选值如下:

    * localRestartable -(仅在使用Ehcache企业版时有效。启动RestartStore,拷贝所有的缓存项(包含堆和非堆中的)到磁盘中,此选项提供了缓存快速重启能力以及对磁盘上缓存的容错能力)

    * localTempSwap - (当缓存容量达到上线时,将缓存对象(包含堆和非堆中的)交换到磁盘中。“ localTempSwap”并不持久化缓存内容)

    * none - (不持久化缓存内容)Does not persist cache entries.

    * distributed - (按照<terracotta>标签配置的持久化方式执行。非分布式部署时,此选项不可用)

    <cache name="persistentCache" maxEntriesLocalHeap="1000">

        <persistence strategy="localTempSwap"/>

    </cache>

synchronousWrites:此属性仅在strategy=“localRestartable”时有意义。默认false。设置为true,缓存写入方法在缓存项成功写入磁盘前不会返回

相关文章

  • ehcache配置说明

    必须属性: name:Cache的唯一标识名称(缓存区名称,用以区别缓存区,必须唯一 maxEntriesLoca...

  • Hibernate Ehcache 配置

    hibernate 默认使用 ehcache 缓存策略ehcache 配置 hibernate 配置 Spring...

  • 缓存:Ehcache集成

    ehcache.xml shiro-ehcache.xml (框架自带的xml) 配置类

  • SpringBoo2.x,整合Ehcache3.x

    1、依赖 2、配置 2.1 ehcache配置 在resources 目录中创建ehcache.xml配置ehca...

  • Mybatis缓存配置

    pom文件配置: spring加载ehcache配置文件 ehcache.xml: mybatis.xml开启缓存...

  • springboot自学笔记-整合缓存Ehcache

    ==>整合ehcache步骤。1⃣️添加pom坐标。 2⃣️创建ehcache的配置文件:ehcache.xml ...

  • Spring缓存

    Ehcache配置: ehcache.xml,模版来源于hibernate-search-5.5.5.Final-...

  • EhCache使用笔记

    1、为什么使用EhCache? 2、在maven+spring + ehcache整合配置 2.1、pom文件添加...

  • spring boot 集成 EhCache

    详见博客: ehcache 说明 开涛博客 缓存说明 spring 缓存框架

  • Ehcache3配置使用

    Ehcache3配置方式与Ehcache2的配置方式区别很大! 缓存管理器只有全局状态下其他地方才能根据名称拿到缓...

网友评论

      本文标题:ehcache配置说明

      本文链接:https://www.haomeiwen.com/subject/tumrlctx.html