- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
EHCache介绍
EHCache介绍
简介
系统缓存是位于应用程序与物理数据源之间,用于临时存放复制数据的内存区域,目的是为了减少应用程序对物理数据源访问的次数,从而提高应用程序的运行性能. 缓存设想内存是有限的,缓存的时效性也是有限的,所以可以设定内存数量的大小,可以执行失效算法 ,可以在内存满了的时候,按照最少访问等算法将缓存直接移除或切换到硬盘上。
Ehcache从 Hibernate发展而来,逐渐涵盖了Cahce界的全部功能,是目前发展势头最好的一个项目。具有快速,简单,低消耗,依赖性小,扩展性强,支持对象或序列化缓存,支持缓存或元素的失效,提供LRU、LFU和FIFO缓存策略,支持内存缓存和磁盘缓存,分布式缓存机制等等特点。
2009年8月Terracotta公司并购了开源缓存项目Ehcache, Terracotta 公司的产品 Terracotta 是一个 JVM 级的开源群集框架,提供 HTTP Session 复制、散布式缓存、POJO 群集、跨越集群的 JVM 来完成散布式使用顺序协调。并购后 EhCache 首要的改进都集中在跟 Terracotta 框架的集成上,这是一个真实意义上的企业级缓存处置方案。Ehcache1.7版本上首次加入了ehcache-terracotta组件模块,想利用terracotta来实现更方便的集群操作。Ehcache是一个开源的,用于提高访问性能的标准高速缓存,它抛弃了数据库同时易于扩展。Ehcache拥用强大的,可靠和完整的功能,这已成为最广泛使用的基于Java的高速缓存。For applications needing a coherent distributed cache, Ehcache uses the open source Terracotta Sever Array.对于需要的分布式缓存应用,hcache的使用开源的Terracotta Sever的阵列。 Apache 2 license。除了开源的ehcache,Terracotta公司还提供企业版的Ehcache全天候的专业支持,咨询和培训。
Architecture
下图是系统的架框图和主要的API。
特点
高效且轻量级
快速
多年来,各种性能测试表明ehcache是java缓存中最快之一。Ehcache的线程机制专门为大型、高并发的系统设计。同时,大量测试表明ehcache各测试版和发行版都保持着高性能。
简单
很多用户都很难知道自己正在使用着ehcache,因为设置合理的默认值后无需初始配置。API非常简单易于使用,你可能只需要几分钟就可以让他运行起来。
低消耗
他是一个只有几百KB的package。
依赖性小
核心使用的唯一的依赖是JCACHE的API为提供扩展到千兆字节,提供内存和磁盘存储。自Ehcache1.2后, 除序列化API外, 提供了对象API。非序列化的对象可以使用Ehcache中除DiskStore(磁盘存储)和复制之外的所有部分。 如果尝试去存储或复制对象,一个警告级别的日志消息会发出。除了元素返回的方法(获取缓存元素,可理解为数据)不同外,对象和序列化的API是一致的。序列化和对象API的唯一区别是对象元素上的两个新方法:getObjectValue 和 getKeyValue。这使得初始使用对象缓存,然后切换到序列化上变得相当容易。也有很多的Java类未序列化。支持缓存范围或基于元素的过期策略每个缓存的在线时间(在线意为处于活动状态,可提供缓存服务)和下线时间(下线意为不可提供服务的状态)是可以设置的。 另外,自Ehcache1.2.1后,? 可以设置每个元素的时间配置来覆盖缓存中的配置。动态,运行时的缓存配置Ehcache提供了至今为止的JSR107 JCACHE 标准的最完整实现。因为JCACHE还没有发布JCACHE API,Ehcache发布net.sf.jsr107cache,并提供实现。CacheManagerEventListener和CacheEventListener接口。实现接口可以实现ehcache.xml中对插入的配置。
插件式查询、克隆和监测
插件式缓存扩展
插件式缓存异常处理
持久化应用
持久化磁盘存储JVM重启期数据。
2004年Ehcache 1,第一个开源版本中,引入了将程序关闭后缓存数据持久化存储的功能。VM重启时,持久化存储到存储数据的磁盘, 当应用启动时,缓存数据可以使用。需要时Flush到磁盘(通过调用cache.flush()方法)通过CacheManagerEventListener接口注册CacheManager 监听器, 实现如下事件方法: notifyCacheAdded()???? 缓存被添加时监听器会得到通知 notifyCa
您可能关注的文档
- 2012高考真题天津卷文科数学含答案.doc
- 高二数学必修五选修2-1综合考试题.doc
- 新课标 苏教版高一数学数列的概念和简单表示.doc
- “五四红旗团支部”申报.ppt
- 英语四级真题及答案下载__2002年~2010年.doc
- 开发合同评审作业指导书6.doc
- 深基坑降水工程施工质量监理细则.doc
- 3施工进度控制.ppt
- ABB公司AC500PLC培训课程第一天1-11_Retentive_Variables_CN.ppt
- 特种设备管理规程名目汇总.doc
- 新高考生物二轮复习讲练测第6讲 遗传的分子基础(检测) (原卷版).docx
- 新高考生物二轮复习讲练测第12讲 生物与环境(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第3讲 酶和ATP(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第9讲 神经调节与体液调节(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第11讲 植物生命活动的调节(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第8讲 生物的变异、育种与进化(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第5讲 细胞的分裂、分化、衰老和死亡(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第5讲 细胞的分裂、分化、衰老和死亡(检测)(原卷版).docx
- 新高考生物二轮复习讲练测第12讲 生物与环境(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第11讲 植物生命活动的调节(检测)(原卷版).docx
文档评论(0)