`

Ehcache配置详解

 
阅读更多

一、缓存配置

<defaultCache

                maxElementsInMemory="10000"

                overflowToDisk="true"

eternal="false"

                memoryStoreEvictionPolicy="LRU"

                maxElementsOnDisk="10000000"

diskExpiryThreadIntervalSeconds="600"

                timeToIdleSeconds="3600"

timeToLiveSeconds="100000"

                diskPersistent="false" />

 

缓存配置
       name:缓存名称。
       maxElementsInMemory:缓存最大个数。
       eternal:对象是否永久有效,一但设置了,timeout将不起作用。
       timeToIdleSeconds:设置对象在失效前的允许闲置时间(单位:秒)。仅当eternal=false对象不是永久有效时使用,可选属性,默认值是0,也就是可闲置时间无穷大。
       timeToLiveSeconds:设置对象在失效前允许存活时间(单位:秒)。最大时间介于创建时间和失效时间之间。仅当eternal=false对象不是永久有效时使用,默认是0.,也就是对象存活时间无穷大。
       overflowToDisk:当内存中对象数量达到maxElementsInMemory时,Ehcache将会对象写到磁盘中。
       diskSpoolBufferSizeMB:这个参数设置DiskStore(磁盘缓存)的缓存区大小。默认是30MB。每个Cache都应该有自己的一个缓冲区。
       maxElementsOnDisk:硬盘最大缓存个数。
       diskPersistent:是否缓存虚拟机重启期数据 Whether the disk store persists between restarts of the Virtual Machine. The default value is false.
       diskExpiryThreadIntervalSeconds:磁盘失效线程运行时间间隔,默认是120秒。
       memoryStoreEvictionPolicy:当达到maxElementsInMemory限制时,Ehcache将会根据指定的策略去清理内存。默认策略是LRU(最近最少使用)。你可以设置为FIFO(先进先出)或是LFU(较少使用)。
       clearOnFlush:内存数量最大时是否清除。

 

 

二、Ehcache基本用法

 

CacheManager cacheManager = CacheManager.create();
// 或者
cacheManager = CacheManager.getInstance();
// 或者
cacheManager = CacheManager.create("/config/ehcache.xml");
// 或者
cacheManager = CacheManager.create("http://localhost:8080/test/ehcache.xml");
cacheManager = CacheManager.newInstance("/config/ehcache.xml");
// .......
 
// 获取ehcache配置文件中的一个cache
Cache sample = cacheManager.getCache("sample");
// 获取页面缓存
BlockingCache cache = new BlockingCache(cacheManager.getEhcache("SimplePageCachingFilter"));
// 添加数据到缓存中
Element element = new Element("key", "val");
sample.put(element);
// 获取缓存中的对象,注意添加到cache中对象要序列化 实现Serializable接口
Element result = sample.get("key");
// 删除缓存
sample.remove("key");
sample.removeAll();
 
// 获取缓存管理器中的缓存配置名称
for (String cacheName : cacheManager.getCacheNames()) {
    System.out.println(cacheName);
}
// 获取所有的缓存对象
for (Object key : cache.getKeys()) {
    System.out.println(key);
}
 
// 得到缓存中的对象数
cache.getSize();
// 得到缓存对象占用内存的大小
cache.getMemoryStoreSize();
// 得到缓存读取的命中次数
cache.getStatistics().getCacheHits();
// 得到缓存读取的错失次数
cache.getStatistics().getCacheMisses();

 

 

参考:http://www.cnblogs.com/hoojo/archive/2012/07/12/2587556.html

分享到:
评论

相关推荐

    ehcache的配置参数详解

    本文将深入探讨ehcache.xml配置文件中的关键参数及其作用,帮助开发者更有效地管理和优化缓存策略。 ### 1. `defaultCache` 标签 `defaultCache` 是ehcache.xml中一个重要的标签,用于定义所有未显式指定缓存策略...

    ehcache配置使用详解

    #### 三、ehcache配置详解 **1. 运行时配置的优点:** - **统一管理**:集中配置所有Cache,方便调整缓存策略和资源分配。 - **动态调整**:发布后可根据实际运行情况调整缓存配置,无需重新编译代码。 **2. 缓存...

    ehcache缓存配置详解

    ehcache 缓存配置详解 Ehcache 是一个流行的 Java 缓存框架,提供了强大的缓存机制,帮助开发者提高应用程序的性能和可扩展性。 Ehcache 的配置主要包括 diskstore、defaultCache、cache 三个部分,这三个部分的...

    ehcache使用详解

    **Ehcache 使用详解** Ehcache 是一个广泛使用的开源Java缓存库,它提供了内存和磁盘存储的二级缓存机制,以提高应用程序的性能和响应速度。Ehcache 被设计为轻量级且易于集成到各种Java应用程序中,支持分布式缓存...

    EHCache配置

    **EHCache配置详解** EHCache是一款广泛应用于Java环境中的开源分布式缓存系统,它能够显著提升应用程序的性能和响应速度,特别是在数据访问密集型的应用场景中。本文将深入探讨EHCache的配置细节,帮助开发者更好...

    ehcache缓存的配置

    #### 四、ehcache配置详解 - **内存与硬盘缓存**:通过 `maxElementsInMemory` 和 `maxElementsOnDisk` 属性来控制缓存在内存和硬盘上的最大条目数量,这有助于管理缓存资源的使用,避免占用过多内存或磁盘空间。 - ...

    ehcache技术详解

    #### 配置详解 `ehcache.xml` 文件示例: ```xml &lt;ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://ehcache.org/ehcache.xsd"&gt; ...

    初学ehcache,3分钟搞定。

    #### 二、ehcache配置详解 根据给定的部分内容中的`ehcache.xml`配置示例,我们可以深入探讨其各项参数的意义及作用: 1. **`defaultCache`**:这是ehcache默认的缓存配置,当没有为特定缓存指定配置时,将使用此...

    细谈Ehcache页面缓存的使用

    #### 三、Ehcache配置详解 在使用Ehcache进行页面缓存时,需要对缓存配置文件进行合理的设置,以满足不同场景的需求。下面是一些关键的配置项及其含义: - **`maxElementsInMemory`**:指定缓存在内存中的最大元素...

    Ehcache2缓存区配置详解.pdf

    ### Ehcache2缓存区配置详解 #### 一、Ehcache概述 Ehcache,一个备受推崇的开源高速缓存系统,专为提升应用程序性能、减轻数据库负担及简化应用扩展设计。其卓越的稳定性和丰富的特性使其成为Java领域内最受欢迎...

    集群环境中使用_EhCache_缓存系统&Ehcache配置文件的详细说明

    三、EhCache配置文件详解 EhCache的配置主要通过`ehcache.xml`文件进行。以下是一些关键配置元素: 1. `&lt;cache&gt;`元素:定义一个缓存区域,包括缓存名称、最大元素数、内存和磁盘存储策略等。例如: ```xml ...

    ehcache缓存框架

    #### 二、Ehcache配置详解 Ehcache主要通过XML配置文件来进行管理,以下是对XML配置文件中关键参数的详细解析: 1. **`&lt;ehcache&gt;`**:根元素,用于包含所有的缓存定义。 2. **`&lt;diskStore path="java.io.tmpdir"/&gt;...

    Hibernate+EhCache配置及使用说明详解

    Hibernate+EhCache 配置及使用说明详解 EhCache 是 Hibernate 的二级缓存技术之一,可以把查询出来的数据存储在内存或者磁盘,节省下次同样查询语句再次查询数据库,大幅减轻数据库压力。 EhCache 的使用注意点: ...

    EHCache详解_技术文档

    **2.3 ehcache配置文件中元素说明** 在ehcache.xml配置文件中,可以定义多个缓存区域及其配置参数。常见的配置项包括: - `&lt;cache&gt;`:定义一个缓存区域。 - `name`:缓存的名称。 - `maxElementsInMemory`:内存中...

    整合spring 和ehcache

    配置ehcache缓存,存储内存的设置,与spring 的整合等

    ehcache使用,以及集群配置

    **Ehcache 使用详解与集群配置** Ehcache 是一个广泛使用的开源Java缓存系统,它提供了内存和磁盘存储,以及对缓存数据的分布式处理能力。在Java应用程序中,Ehcache能够显著提高性能,减少数据库负载,通过缓存...

    EHCache技术文档详解.doc

    2.3 EHCACHE配置文件中元素说明 配置文件中包含、、、等元素,分别用于定义缓存、默认缓存参数、磁盘存储设置和事务管理器查找。 2.4 在工程中单独使用 通过CacheManager获取或创建Cache实例,然后添加、检索、更新...

    javaWeb中Ehcache缓存配置说明

    ### JavaWeb中Ehcache缓存配置详解 在JavaWeb应用开发中,缓存技术扮演着至关重要的角色,它能够显著提升应用性能和响应速度,减少数据库负担。Ehcache作为一款广泛使用的开源缓存解决方案,其高效、灵活的特性受到...

Global site tag (gtag.js) - Google Analytics