【EhCache二】ehcache.xml配置详解
编程技术  /  houtizong 发布于 3年前   650
在ehcache官网上找了多次,终于找到ehcache.xml配置元素和属性的含义说明文档了,这个文档包含在ehcache.xml的注释中!
ehcache.xml : http://ehcache.org/ehcache.xml
ehcache.xsd : http://ehcache.org/ehcache.xsd
ehcache配置文件的根元素是ehcahe
1.name
an optional name for the CacheManager. The name is optional and primarily used for documentation
2.updateCheck
an optional boolean flag specifying whether this CacheManager should check for new versions of Ehcache over the Internet. If not specified, updateCheck="true".默认是true
3.dynamicConfig
an optional setting that can be used to disable dynamic configuration of caches associated with this CacheManager。默认是true
4.defaultTransactionTimeoutInSeconds
事务超时时间,默认是15
5.maxBytesLocalHeap
optional setting that constraints the memory usage of the Caches managed by the CacheManager to use at most the specified number of bytes of the local VM's heap. 取值需要符 合正则表达式([0-9]+[bBkKmMgG]?|100%|[0-9]{1,2}%),默认0,表示没有限制
6. maxBytesLocalOffHeap
optional setting that constraints the offHeap usage of the Caches managed by the CacheManager to use at most the specified number of bytes of the local VM's offHeap memory.取 值需要符合正则表达式[0-9]+[bBkKmMgG]? ,默认0,表示不限制
7. maxBytesLocalDisk
optional setting that constraints the disk usage of the Caches managed by the CacheManager to use at most the specified number of bytes of the local disk.取值需要符合正则表达式[0-9]+[bBkKmMgG]? ,默认0,表示不限制
8. monitoring
an optional setting that determines whether the CacheManager should automatically register the SampledCacheMBean with the system MBean server。 默认是autodetect ,可选值包括autodetect,on,off
ehcache根元素的所有属性都是可选的,除了name之外都有一个默认值
1. defaultCache
2. cache
3. diskStore
4. transactionManagerLookup
5. sizeOfPolicy
6. cacheManagerPeerProviderFactory
7. cacheManagerPeerListenerFactory
8. cacheManagerEventListenerFactory
说明:
1. diskExpiryThreadIntervalSeconds
The number of seconds between runs of the disk expiry thread. The default value is 120 seconds.
2. diskSpoolBufferSizeMB
This is the size to allocate the DiskStore for a spool buffer. Writes are made to this area and then asynchronously written to disk. The default size is 30MB.
Each spool buffer is used only by its cache. If you get OutOfMemory errors consider lowering this value. To improve DiskStore performance consider increasing it. Trace level
logging in the DiskStore will show if put back ups are occurring.
3.diskPersistent
The disk store is persistent between cache and VM restarts。That's to say, data saved in the disk will be persisted even the VM is down?
4.diskAccessStripes
5.eternal
Specify whether the elemement in the cache is never expired. Note that when a cache is eternal, timeToLive and timeToIdle are not used and do not need to be specified
6.maxElementsInMemory
7.maxEntriesLocalHeap
Specify the maximum number of elements that can stay in memory(JVM memory, know as heap)。指定允许在内存中存放元素的最大数量,0表示不限制。这个属性也可以在运行期动态修改。
8.clearOnFlush
表示在调用Cache的flush方法时是否要清空MemoryStore。默认为true。
9.memoryStoreEvictionPolicy
内存中的缓存数据清除策略。EhCache提供了两种方式:LRU,FIFO
10.overflowToDisk
Specify whether overflow to disk if the number of elements exceed in memory 。默认为false。当内存里面的缓存已经达到预设的上限时是否允许将按驱除策略驱除的元素保存在硬盘上,默认是LRU(最近最少使用)。当指定为false的时候表示缓存信息不会保存到磁盘上,只会保存在内存中。该属性现在已经废弃,推荐使用cache元素的子元素persistence来代替,如:<persistence strategy=”localTempSwap”/>
11.timeToIdleSeconds
Sets the time to idle for an element before it expires. i.e. The maximum amount of time between accesses before an element expires Is only used if the element is not eternal.
Optional attribute. A value of 0 means that an Element can idle for infinity. The default value is 0.
12.timeToLiveSeconds
Sets the time to live for an element before it expires. i.e. The maximum time between creation time and when an element expires. Is only used if the element is not eternal.
Optional attribute. A value of 0 means that and Element can live for infinity. The default value is 0.
13.maxElementsOnDisk
14.maxEntriesLocalDisk
Sets the maximum number of objects that will be maintained in the DiskStore。The default value is zero, meaning unlimited.
15.transactionalMode
事务模式,有on,off,local,xa,xa_strict五中取值,默认是off
16.statistics
17.copyOnRead
Whether an Element is copied when being read from a cache.By default this is false.
18.copyOnWrite
Whether an Element is copied when being added to the cache. By default this is false.
19.cacheLoaderTimeoutMillis
20.overflowToOffHeap
boolean类型,默认为false。表示是否允许Cache使用非堆内存进行存储,非堆内存是不受Java GC影响的。该属性只对企业版Ehcache有用
21.maxMemoryOffHeap
非堆内存的最大值
cache除了包含defaultCache元素定义的属性之外,cache元素还有几个defacultCache元素没有的属性
1. maxBytesLocalHeap
指定当前缓存能够使用的JVM堆内存的最大字节数。它的格式需要满足匹配正则表达式([0-9]+[bBkKmMgG]?|100%|[0-9]{1,2}%)
2.maxBytesLocalOffHeap
指定当前缓存能够使用的JVM非堆内存的最大字节数。它的格式需要满足匹配正则表达式([0-9]+[bBkKmMgG]?|100%|[0-9]{1,2}%)
3.maxBytesLocalDisk
指定当前缓存能够使用的硬盘的最大字节数。它的格式需要满足匹配正则表达式([0-9]+[bBkKmMgG]?|100%|[0-9]{1,2}%)。它的值应该小于ehcache根元素上的这个属性的配置,如果ehache下还有其它的cache,那么分配给其它Cache的容量为ehcache.maxBytesLocalDisk - this.maxBytesLocalDisk。其它两个属性也是一样的
diskstore元素没有子元素,同时只有一个path属性,用于指定EhCache往磁盘上存放数据的路径,默认是java.io.tmpdir。
1. user.dir - User's current working directory
2. java.io.tmpdir - Default temp file path
3. ehcache.disk.store.dir - A system property you would normally specify on the command line e.g. java -Dehcache.disk.store.dir=/u01/myapp/diskdir ...
<diskStore path="java.io.tmpdir"/><diskStore path="/home/tom/ehcache-data-dir"/>
cacheManagerEventListenerFactory作为ehcache的子元素,它监听的是CacheManager的添加、删除缓存对象(Cache)的事件。同样的,cache元素的子元素cacheEventListenerFactory用于监听Cache上数据CRUD操作
1. class - a fully qualified factory class name。The fully qualified class name will be set to be registered as the CacheManager event listener.
2. properties - comma separated properties having meaning only to the factory.
1. adding a Cache
2. removing a Cache
请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!
技术博客集 - 网站简介:
前后端技术:
后端基于Hyperf2.1框架开发,前端使用Bootstrap可视化布局系统生成
网站主要作用:
1.编程技术分享及讨论交流,内置聊天系统;
2.测试交流框架问题,比如:Hyperf、Laravel、TP、beego;
3.本站数据是基于大数据采集等爬虫技术为基础助力分享知识,如有侵权请发邮件到站长邮箱,站长会尽快处理;
4.站长邮箱:[email protected];
文章归档
文章标签
友情链接