自从Ehcache 到了1.2+的版本,就支持分布式缓存了

Spring + Hibernate的结构 ,ehcache的对这几个框架的支持较好,就采用这个缓存方案

下面是配置文件:

<ehcache> <diskStore path="java.io.tmpdir" />

<defaultCache maxElementsInMemory="10000"       eternal="false"    timeToIdleSeconds="120"    timeToLiveSeconds="120"    overflowToDisk="true"    maxElementsOnDisk="10000000"    diskPersistent="false"    diskExpiryThreadIntervalSeconds="120"    memoryStoreEvictionPolicy="LRU" >    </defaultCache> <cache name="smapCache"       maxElementsInMemory="10000"       eternal="false"    timeToIdleSeconds="3600"    timeToLiveSeconds="3600"    overflowToDisk="true"    maxElementsOnDisk="10000000"    diskPersistent="false"    diskExpiryThreadIntervalSeconds="120"    memoryStoreEvictionPolicy="LRU">     </cache>

</ehcache>

下面是分布式缓存配置

<ehcache> <diskStore path="java.io.tmpdir" />

<!--自动查找局域网中分布式的peer 。也可手工指定节点的地址的,如:peerDiscovery=manual,rmiUrls=//server1:40000/sampleCache1 --> <cacheManagerPeerProviderFactory    class="net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory"    properties="peerDiscovery=automatic, multicastGroupAddress=230.0.0.1, multicastGroupPort=4446" />

<cacheManagerPeerListenerFactory    class="net.sf.ehcache.distribution.RMICacheManagerPeerListenerFactory" />

<defaultCache maxElementsInMemory="10000"       eternal="false"    timeToIdleSeconds="120"    timeToLiveSeconds="120"    overflowToDisk="true"    maxElementsOnDisk="10000000"    diskPersistent="false"    diskExpiryThreadIntervalSeconds="120"    memoryStoreEvictionPolicy="LRU" >    </defaultCache> <cache name="smapCache"       maxElementsInMemory="10000"       eternal="false"    timeToIdleSeconds="3600"    timeToLiveSeconds="3600"    overflowToDisk="true"    maxElementsOnDisk="10000000"    diskPersistent="false"    diskExpiryThreadIntervalSeconds="120"    memoryStoreEvictionPolicy="LRU">   <cacheEventListenerFactory          class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"/>    </cache>

</ehcache>

必须属性: name:设置缓存的名称,用于标志缓存,惟一 maxElementsInMemory:在内存中最大的对象数量 maxElementsOnDisk:在DiskStore中的最大对象数量,如为0,则没有限制 eternal:设置元素是否永久的,如果为永久,则timeout忽略 overflowToDisk:是否当memory中的数量达到限制后,保存到Disk

可选的属性: timeToIdleSeconds:设置元素过期前的空闲时间 timeToLiveSeconds:设置元素过期前的活动时间 diskPersistent:是否disk store在虚拟机启动时持久化。默认为false diskExpiryThreadIntervalSeconds:运行disk终结线程的时间,默认为120秒 memoryStoreEvictionPolicy:策略关于Eviction

缓存子元素: cacheEventListenerFactory:注册相应的的缓存监听类,用于处理缓存事件,如put,remove,update,和expire bootstrapCacheLoaderFactory:指定相应的BootstrapCacheLoader,用于在初始化缓存,以及自动设置。

spring配置:

<!-- ehcache --> <bean id="cacheManager"          class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean">          <property name="configLocation"              value="classpath:ehcache.xml">          </property>      </bean>

<bean id="smapCacheBean" class="org.springframework.cache.ehcache.EhCacheFactoryBean">          <property name="cacheManager" ref="cacheManager"></property>          <property name="cacheName" value="smapCache"></property>      </bean>

Ehcache 使用的更多相关文章

  1. [原创]mybatis中整合ehcache缓存框架的使用

    mybatis整合ehcache缓存框架的使用 mybaits的二级缓存是mapper范围级别,除了在SqlMapConfig.xml设置二级缓存的总开关,还要在具体的mapper.xml中开启二级缓 ...

  2. springmvc 多数据源 SSM java redis shiro ehcache 头像裁剪

    获取下载地址   QQ 313596790  A 调用摄像头拍照,自定义裁剪编辑头像 B 集成代码生成器 [正反双向](单表.主表.明细表.树形表,开发利器)+快速构建表单;  技术:31359679 ...

  3. 网站缓存技术总结( ehcache、memcache、redis对比)

    网站技术高速发展的今天,缓存技术已经成为大型网站的一个关键技术,缓存设计好坏直接关系的一个网站访问的速度,以及购置服务器的数量,甚至影响到用户的体验. 网站缓存按照存放的地点不同,可以分为客户端缓存. ...

  4. 【JavaWeb】Spring+SpringMVC+MyBatis+SpringSecurity+EhCache+JCaptcha 完整Web基础框架(前言)

    一直希望能够搭建一个完整的,基础Web框架,方便日后接一些外快的时候,能够省时省力,终于花了一周的时间,把这个东西搞定了.特此写下此博客,一来是纪念,二来是希望能够为别人提供方便.顺带说一下,恩,组合 ...

  5. 转载:Spring+EhCache缓存实例

    转载来自:http://www.cnblogs.com/mxmbk/articles/5162813.html 一.ehcahe的介绍 EhCache 是一个纯Java的进程内缓存框架,具有快速.精干 ...

  6. Hibernate+EhCache配置二级缓存

    步骤: 第一步:加入ehcache.jar 第二步: 在src目录下新建一个文件,名为:ehcache.xml 第三步:在hibernate配置文件的<session-factory>下配 ...

  7. 【JavaWeb】Spring+SpringMVC+MyBatis+SpringSecurity+EhCache+JCaptcha 完整Web基础框架(五)

    SpringSecurity(2) 好久没有写了,之前只写了一半,我是一边开发一边写Blog一边上班,所以真心没有那么多时间来维护Blog,项目已经开发到编写逻辑及页面部分了,框架基本上已经搭建好不会 ...

  8. (转)springMVC+mybatis+ehcache详细配置

    一. Mybatis+Ehcache配置 为了提高MyBatis的性能,有时候我们需要加入缓存支持,目前用的比较多的缓存莫过于ehcache缓存了,ehcache性能强大,而且位各种应用都提供了解决方 ...

  9. ehcache注解全面解析---打酱油的日子

    通过ehcache以编程方式使用缓存: 跟上面的方式相同,但是缓存通过ehcache去管理,当然比使用map有N多种好处,比如缓存太大了快达到上限之后,将哪一部分缓存清除出去.这种方式完全是通过代码的 ...

  10. spring mvc + ehcache 利用注解实现缓存功能

    我的spring是3.1的,因为项目需求,需要在查询时候加上缓存,小白一个,完全没有用过缓存(ehcache),摸索了一天终于会了一点通过注解来使用ehcache进行缓存,立刻给记录下来. 首先 我的 ...

随机推荐

  1. Android--Notification

    1.通知(Notification)是应用程序没有运行在前台时可以向用户发出一些提示消息的功能,发出通知后,手机状态栏会显示通知,用户可以通过下拉状态栏来查看和操作通知: 2.Notification ...

  2. ORGANIZATION

    Leader:  Ming Xiang Ph.D students:  Bo Yang Yupei Zhang M.Eng. students: Cheng Feng Jinquan Du Youli ...

  3. 应用框架的设计与实现——.NET平台(10 授权服务.CodeAccessSecurityAttribute)

    以下内容转载自:http://blog.csdn.net/dongma_yifei/article/details/1533124 CodeAccessSecurityAttribute 是 Prin ...

  4. node-webkit教程(9)native api 之Tray(托盘)

    node-webkit教程(9)native api 之Tray(托盘) 文/玄魂 目录 node-webkit教程(9)native api 之Tray(托盘) 前言 9.1  Tray简介 9.2 ...

  5. 简洁清新的box样式

    小菜今天偶然打开了腾讯公益,本来是冲着公益活动去的,没想到腾讯公益界面做的还不错,索性把它的box样式剽窃了下来. 个人觉得腾讯的东西普遍比较精致,就拿页面来说,每一个细节都把握的很到位,例如取色,看 ...

  6. Lingo 做线性规划 - DEA

    Reference: <An Introduction to Management Science Quantitative Approaches to Decision Making, Rev ...

  7. PowerDesigner 15.1 安装步骤详细图解及破解

    准备工作: 下载 PowerDesigner 15.1 的安装文件和破解文件 PowerDesigner 15.1 下载地址:http://pan.baidu.com/share/link?share ...

  8. .NET读取Office文件内容(word、excel、ppt)

    引用命名空间 using Microsoft.Office.Core; using Word = Microsoft.Office.Interop.Word; using Excel = Micros ...

  9. [原创]Windows Phone SDK下载

    [原创]Windows Phone SDK下载 http://dev.windowsphone.com/zh-cn/downloadsdk

  10. 从此爱上iOS Autolayout

    转:从此爱上iOS Autolayout 这篇不是autolayout教程,只是autolayout动员文章和经验之谈,在本文第五节友情链接和推荐中,我将附上足够大家熟练使用autolayout的教程 ...