OsCache MemCached EhCache

简介: 引用:http://hi.baidu.com/johnsoncr/item/7d53ed8ffcef1bd75e0ec1cb Memcache:分布式内存对象缓存系统,占用其他机子的内存。很多互联网,负载均衡三台(以三台为例)web服务器可以共享一台Memcache的资源。

引用:http://hi.baidu.com/johnsoncr/item/7d53ed8ffcef1bd75e0ec1cb

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(先进先出)

相关文章
|
7月前
|
存储 缓存 NoSQL
EhCache缓存
在查询数据的时候,数据大多来自数据库,通常会基于SQL语句的方式与数据库交互,数据库一般会基于本地磁盘IO的形式将数据读取到内存,返回给Java服务端,Java服务端再将数据响应给客户端,做数据展示。
71 0
|
8月前
|
缓存 Java 数据库连接
什么是EhCache 缓存
什么是EhCache 缓存
70 0
|
存储 缓存 NoSQL
学习MyBatis必知必会(9)~缓存机制(一级缓存、二级缓存、第三方缓存技术redis、ehcache)
学习MyBatis必知必会(9)~缓存机制(一级缓存、二级缓存、第三方缓存技术redis、ehcache)
398 0
学习MyBatis必知必会(9)~缓存机制(一级缓存、二级缓存、第三方缓存技术redis、ehcache)
|
缓存 Java 数据库连接
|
存储 缓存 NoSQL
我们究竟什么时候可以使用Ehcache缓存(转)
一、Ehcache是什么 EhCache是Hibernate的二级缓存技术之一,可以把查询出来的数据存储在内存或者磁盘,节省下次同样查询语句再次查询数据库,大幅减轻数据库压力。 二、Ehcache的使用场景是什么 1、首先最主要就是页面缓存。
1366 0
|
缓存 NoSQL 应用服务中间件
我们究竟什么时候可以使用Ehcache缓存
文/小程故事多(简书作者) 原文链接:http://www.jianshu.com/p/2cd6ad416a5a 一、Ehcache是什么 EhCache是Hibernate的二级缓存技术之一,可以把查询出来的数据存储在内存或者磁盘,节省下次同样查询语句再次查询数据库,大幅减轻数据库压力。 二、Ehcache的使用场景是什么 1、首先最主要就是页面缓存。 网站
2230 0
|
缓存 NoSQL Java
玩转EhCache之最简单的缓存框架
一、简介 Ehcache是一个用Java实现的使用简单,高速,实现线程安全的缓存管理类库,ehcache提供了用内存,磁盘文件存储,以及分布式存储方式等多种灵活的cache管理方案。
1565 0