EHCache-failsafe.xml配置

 

 

 

 

Hibernate的Session在事务级别进行持久化数据的缓存操作。

通过在hibernate.cache.provider_class属性中指定org.hibernate.cache.CacheProvider的某个实现的类名,你可以选择让Hibernate使用哪个缓存实现。

------

EHCache支持memory和disk存储。

 

 

maxElementsInMemory  配置最大的内存存储对象的数量

 

eternal  存储的对象是否永久生效,一般设置为false
           

timeToIdleSeconds="10"  对象失效的间隔时间 (如果10秒内没有访问,则该对象失效)
          

timeToLiveSeconds="120"  对象的生命周期,此时为120秒(不管对象是否被访问,120s之后该对象失效。即总生命时间。)
           

overflowToDisk="true"  如果内存数量已满,则是否支持存储到硬盘
            

memoryStoreEvictionPolicy="LRU"  内存中对象的替换算法
               

FIFO:先进先出  (没有考虑到访问的次数和访问的时间)
              

 LFU:Least Frequently Used, 最近最不经常使用算法   通过离最近没有被访问的“时间”来确定哪个对象应该被移出
               

LRU:Least Recently Used,最近最少使用  根据访问的“频率”把访问最少的对象移出。ps:频率相等时按照时间来确定哪个对象被移出。
           

LRU  和 FIFO 替换算法, 结论: LRU default: 效率比FIFO高。            
            

diskPersistent:false; 是否在磁盘上持久化。指重启jvm后,数据是否有效。默认为false, 集群的时候设置为true
      

diskExpiryThreadIntervalSeconds: 如果上面设置为true, 设置设置多长的线程间隔有效

 


          

你可能感兴趣的:(ehcache)