ehcache是一个用Java完成的运用复杂,高速,完成线程平安的缓存治理类库,ehcache供应了用内存,磁盘文件存储,以及散布式存储体式格局等多种灵敏的cache治理方案。同时ehcache作为开放源代码项目,采用限制比拟宽松的Apache License V2.0作为受权体式格局,被普遍地用于Hibernate,  Spring,Cocoon等其他开源零碎。 

 Ehcache的类条理模子次要为三层,最下层的是CacheManager,他是操作Ehcache的进口。我们可以经过CacheManager.getInstance()取得一个单个的CacheManager,或许经过CacheManager的结构函数创立一个新的CacheManager。每个CacheManager都治理着多个Cache。而每个Cache都以一品种Hash的体式格局,联系关系着多个Elemenat。而Element则是我们用于寄存要缓存内容的中央。

ehcache的刷新战略ehcache的刷新战略是当缓存在放入的时分记载一个放入工夫,它是用Lazy Evict的体式格局,在取的时分同设置的TTL比拟ehcache缓存的3种清空战略:1 FIFO,先辈先出2 LFU,起码被运用,缓存的元素有一个hit属性,hit值最小的将会被清出缓存。3 LRU,比来起码运用的,缓存的元素有一个工夫戳,当缓存容量满了,而又需求腾出中央来缓存新的元素的时分,那么现有缓存元素中工夫戳离以后工夫最远的元素将被清出缓存。事情处置可认为CacheManager添加事情监听,当对CacheManager增删Cache时,事情处置器将会失掉告诉。要设置装备摆设事情处置,需求经过ehcache的设置装备摆设文件来完成。

ehcache参数设置装备摆设:maxInMemory - 设定内存中创立对象的最年夜值。eternal - 设置元素(译注:内存中对象)能否永世驻留。假如是,将疏忽超时限制且元素永不用亡。timeToIdleSeconds - 设置某个元素消亡前的进展工夫。也就是在一个元素消亡之前,两次拜访工夫的最年夜工夫距离值。这只能在元素不是永世驻留时无效(译注:假如对象永久不灭,则设置该属性也无用)。假如该值是 0 就意味着元素可以进展无量长的工夫。timeToLiveSeconds - 为元素设置消亡前的生活工夫。也就是一个元素从构建到消亡的最年夜工夫距离值。这只能在元素不是永世驻留时无效。overflowToDisk  - 设置当内存中缓存到达maxInMemory 限制时元素能否可写到磁盘上。

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐