`
haijun0314
  • 浏览: 8185 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

OsCache MemCached EhCache

阅读更多
OsCache MemCached EhCache
Memcache:分布式内存对象缓存系统,占用其他机子的内存。很多互联网,负载均衡三台(以三台为例)web服务器可以共享一台Memcache的资源。传递的信息以键值对的形式存储。传递的数据要实现序列化。

--------------------------------------------------------------------------------------------------------------------------

Oscache:页面级缓存(网上强调最多的东西),占用本机的内存资源。可 以选择缓存到硬盘,如存取到硬盘重启服务也可重新获得上次持久化的资源,而如果缓存到内存就不行。一般没必要缓存到硬盘,因为I/O操作也是比较耗资源,和从数据库取往往优势很小。Oscache存取数据的作用域分为application和session两种。

--------------------------------------------------------------------------------------------------------------------------
EhCache:Hibernate缓存,DAO缓存,安全性凭证缓存(Acegi),Web缓存,应用持久化和分布式缓存。
    EhCache在默认情况下,即在用户未提供自身配置文件ehcache.xml或ehcache-failsafe.xml时,EhCache会依据其自身Jar存档包含的ehcache-failsafe.xml文件所定制的策略来管理缓存。如果用户在classpath下提供了ehcache.xml或ehcache-failsafe.xml文件,那么EhCache将会应用这个文件。如果两个文件同时提供,那么EhCache会使用ehcache.xml文件的配置。EhCache默认内容如下:


<ehcache>

<diskStore path="C:\Acegi6" />  
<defaultCache
maxElementsInMemory="10000"
eternal="false"
timeToIdleSeconds="120"
timeToLiveSeconds="120"
overflowToDisk="true"
maxElementsOnDisk="10000000"
diskPersistent="false"
diskExpiryThreadIntervalSeconds="120"
memoryStoreEvictionPolicy="LRU"
/>
</ehcache>

属性说明:
 diskStore:指定数据在磁盘中的存储位置。
 defaultCache:当借助CacheManager.add("demoCache")创建Cache时,EhCache便会采用<defalutCache/>指定的的管理策略
以下属性是必须的:
 maxElementsInMemory - 在内存中缓存的element的最大数目
 maxElementsOnDisk - 在磁盘上缓存的element的最大数目
 eternal - 设定缓存的elements是否永远不过期。如果为true,则缓存的数据始终有效,如果为false那么还要根据timeToIdleSeconds,timeToLiveSeconds判断
 overflowToDisk - 设定当内存缓存溢出的时候是否将过期的element缓存到磁盘上
以下属性是可选的:
 timeToIdleSeconds - 当缓存在EhCache中的数据前后两次访问的时间超过timeToIdleSeconds的属性取值时,这些数据便会删除.
 timeToLiveSeconds - 缓存element的有效生命期
 diskPersistent - 在VM重启的时候是否启用磁盘保存EhCache中的数据,默认是false。
 diskExpiryThreadIntervalSeconds - 磁盘缓存的清理线程运行间隔,默认是120秒。每个120s,相应的线程会进行一次EhCache中数据的清理工作
 memoryStoreEvictionPolicy - 当内存缓存达到最大,有新的element加入的时候, 移除缓存中element的策略。默认是LRU(最近最少使用),可选的有LFU(最不常使用)和FIFO(先进先出)
分享到:
评论

相关推荐

    oscache缓存技术入门实例

    osCache虽然功能强大,但在Java缓存领域,还有其他如EHCache、Memcached和Redis等解决方案。每种缓存都有其特点和适用场景,比如EHCache同样适用于本地缓存,而Memcached和Redis更适合分布式缓存环境。 总结,...

    MysqL缓存的解决方案

    缓存技术有多种,常见的缓存技术包括 OScache、Memcached、Redis 等。OSCache 是一种流行的缓存技术,广泛应用于 Java 开发中。Memcached 是一种高性能的缓存系统,广泛应用于大型网站中。 MySQL 缓存解决方案 ...

    Oscache攻略

    - **对比Memcached**:Memcached是分布式内存对象缓存系统,适用于大型分布式系统,而Oscache主要用于单机应用,且主要关注Java环境。 6. **最佳实践** - **合理设置缓存大小**:根据实际需求和服务器资源,合理...

    java缓存_源代码

    4. Java缓存_project:这个文件夹可能包含了上述所有缓存技术的实际应用项目,可能是一个整合了Ehcache、Memcached和OSCache的示例应用。开发者可能在这些项目中比较了不同缓存系统的性能,或者展示了如何根据应用...

    JAVA缓存概念体系及应用

    该压缩包中有一个WORD和一个PPT,WORD中介绍...PPT中介绍了缓存体系,JVM内存模型,JCONSOLE监控工具的使用,Oscache缓存架构 Ehcache缓存架构 Memcached缓存架构 JiveCache缓存架构 Terracotta JVM级缓存架构等相关技术

    原创-java岗位技能与职业规划

    - **缓存**: oscache,ehcache,Memcached等。 - **调度**: Quartz,Java Timer Scheduler,Spring Scheduler。 - **连接池**: dbcp,c3p0等。 - **规则引擎**: jBoss Rules。 - **搜索引擎**: Lucene等。 - *...

    缓存技术浅谈

    操作系统磁盘缓存 减少磁盘机械操作 数据库缓存 减少文件系统I/O 应用程序缓存 减少对数据库的查询 Web服务器缓存 减少应用服务器请求 客户端浏览器缓存 减少对网站的访问

    缓存技术详解

    - **Hibernate二级缓存**:通过第三方缓存提供者如EHCache或OSCache实现,提高Web应用性能。 2. **查询缓存**:Hibernate查询缓存通过缓存查询结果,避免重复执行相同的查询。 #### 八、页面缓存与动态页面静态化 ...

    java应用服务器集群环境下代码编写要注意的问题参照.pdf

    2. **Cache策略**:对象级缓存如HashMap在单机环境下可能无法适应集群环境,需要采用分布式缓存如Ehcache、JBossCache、OSCache,或者集中式缓存如Memcached。选择哪种取决于项目需求。 3. **线程和定时器**:在...

    struts+spring+hibernate资料

    - **第三方缓存组件**:如 EhCache、OSCache。 使用二级缓存的条件: - 数据不会被第三方修改。 - 数据大小在可接受范围内。 - 数据更新频率较低。 - 同一数据被频繁访问。 - 非关键数据。 #### 5. Hibernate ...

Global site tag (gtag.js) - Google Analytics