Ehcache配置文件ehcache.xml

<?xml version="1.0" encoding="UTF-8"?>
<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:noNamespaceSchemaLocation="http://ehcache.org/ehcache.xsd"
         updateCheck="false">
    <!--
       diskStore:爲緩存路徑,ehcache分爲內存和磁盤兩級,此屬性定義磁盤的緩存位置。參數解釋以下:
       user.home – 用戶主目錄
       user.dir  – 用戶當前工做目錄
       java.io.tmpdir – 默認臨時文件路徑
     -->
    <diskStore path="java.io.tmpdir/Tmp_EhCache"/>
    <!--
       defaultCache:默認緩存策略,當ehcache找不到定義的緩存時,則使用這個緩存策略。只能定義一個。
     -->
    <!--
      name:緩存名稱。
      maxElementsInMemory:緩存最大數目
      maxElementsOnDisk:硬盤最大緩存個數。
      eternal:對象是否永久有效,一但設置了,timeout將不起做用。
      overflowToDisk:是否保存到磁盤,當系統當機時
      timeToIdleSeconds:設置對象在失效前的容許閒置時間(單位:秒)。僅當eternal=false對象不是永久有效時使用,可選屬性,默認值是0,也就是可閒置時間無窮大。
      timeToLiveSeconds:設置對象在失效前容許存活時間(單位:秒)。最大時間介於建立時間和失效時間之間。僅當eternal=false對象不是永久有效時使用,默認是0.,也就是對象存活時間無窮大。
      diskPersistent:是否緩存虛擬機重啓期數據 Whether the disk store persists between restarts of the Virtual Machine. The default value is false.
      diskSpoolBufferSizeMB:這個參數設置DiskStore(磁盤緩存)的緩存區大小。默認是30MB。每一個Cache都應該有本身的一個緩衝區。
      diskExpiryThreadIntervalSeconds:磁盤失效線程運行時間間隔,默認是120秒。
      memoryStoreEvictionPolicy:當達到maxElementsInMemory限制時,Ehcache將會根據指定的策略去清理內存。默認策略是LRU(最近最少使用)。你能夠設置爲FIFO(先進先出)或是LFU(較少使用)。
      clearOnFlush:內存數量最大時是否清除。
      memoryStoreEvictionPolicy:可選策略有:LRU(最近最少使用,默認策略)、FIFO(先進先出)、LFU(最少訪問次數)。
      FIFO,first in first out,這個是你們最熟的,先進先出。
      LFU, Less Frequently Used,就是上面例子中使用的策略,直白一點就是講一直以來最少被使用的。如上面所講,緩存的元素有一個hit屬性,hit值最小的將會被清出緩存。
      LRU,Least Recently Used,最近最少使用的,緩存的元素有一個時間戳,當緩存容量滿了,而又須要騰出地方來緩存新的元素的時候,那麼現有緩存元素中時間戳離當前時間最遠的元素將被清出緩存。
   -->
    <defaultCache
            eternal="false"
            maxElementsInMemory="10000"
            overflowToDisk="false"
            diskPersistent="false"
            timeToIdleSeconds="1800"
            timeToLiveSeconds="259200"
            memoryStoreEvictionPolicy="LRU"/>
 
    <cache
            name="cloud_user"
            eternal="false"
            maxElementsInMemory="5000"
            overflowToDisk="false"
            diskPersistent="false"
            timeToIdleSeconds="1800"
            timeToLiveSeconds="1800"
            memoryStoreEvictionPolicy="LRU"/>
 
</ehcache>

  

 

  1. <?xml version= "1.0" encoding= "UTF-8"?>
  2.  
    <ehcache xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance"
  3.  
    xsi:noNamespaceSchemaLocation= "http://ehcache.org/ehcache.xsd"
  4.  
    updateCheck= "false">
  5.  
    <!--
  6.  
    diskStore:爲緩存路徑,ehcache分爲內存和磁盤兩級,此屬性定義磁盤的緩存位置。參數解釋以下:
  7.  
    user.home – 用戶主目錄
  8.  
    user.dir – 用戶當前工做目錄
  9.  
    java.io.tmpdir – 默認臨時文件路徑
  10.  
    -->
  11.  
    <diskStore path= "java.io.tmpdir/Tmp_EhCache"/>
  12.  
    <!--
  13.  
    defaultCache:默認緩存策略,當ehcache找不到定義的緩存時,則使用這個緩存策略。只能定義一個。
  14.  
    -->
  15.  
    <!--
  16.  
    name:緩存名稱。
  17.  
    maxElementsInMemory:緩存最大數目
  18.  
    maxElementsOnDisk:硬盤最大緩存個數。
  19.  
    eternal:對象是否永久有效,一但設置了,timeout將不起做用。
  20.  
    overflowToDisk:是否保存到磁盤,當系統當機時
  21.  
    timeToIdleSeconds:設置對象在失效前的容許閒置時間(單位:秒)。僅當eternal= false對象不是永久有效時使用,可選屬性,默認值是 0,也就是可閒置時間無窮大。
  22.  
    timeToLiveSeconds:設置對象在失效前容許存活時間(單位:秒)。最大時間介於建立時間和失效時間之間。僅當eternal= false對象不是永久有效時使用,默認是 0.,也就是對象存活時間無窮大。
  23.  
    diskPersistent:是否緩存虛擬機重啓期數據 Whether the disk store persists between restarts of the Virtual Machine. The default value is false.
  24.  
    diskSpoolBufferSizeMB:這個參數設置DiskStore(磁盤緩存)的緩存區大小。默認是 30MB。每一個Cache都應該有本身的一個緩衝區。
  25.  
    diskExpiryThreadIntervalSeconds:磁盤失效線程運行時間間隔,默認是 120秒。
  26.  
    memoryStoreEvictionPolicy:當達到maxElementsInMemory限制時,Ehcache將會根據指定的策略去清理內存。默認策略是LRU(最近最少使用)。你能夠設置爲FIFO(先進先出)或是LFU(較少使用)。
  27.  
    clearOnFlush:內存數量最大時是否清除。
  28.  
    memoryStoreEvictionPolicy:可選策略有:LRU(最近最少使用,默認策略)、FIFO(先進先出)、LFU(最少訪問次數)。
  29.  
    FIFO,first in first out,這個是你們最熟的,先進先出。
  30.  
    LFU, Less Frequently Used,就是上面例子中使用的策略,直白一點就是講一直以來最少被使用的。如上面所講,緩存的元素有一個hit屬性,hit值最小的將會被清出緩存。
  31.  
    LRU,Least Recently Used,最近最少使用的,緩存的元素有一個時間戳,當緩存容量滿了,而又須要騰出地方來緩存新的元素的時候,那麼現有緩存元素中時間戳離當前時間最遠的元素將被清出緩存。
  32.  
    -->
  33.  
    <defaultCache
  34.  
    eternal= "false"
  35.  
    maxElementsInMemory= "10000"
  36.  
    overflowToDisk= "false"
  37.  
    diskPersistent= "false"
  38.  
    timeToIdleSeconds= "1800"
  39.  
    timeToLiveSeconds= "259200"
  40.  
    memoryStoreEvictionPolicy= "LRU"/>
  41.  
     
  42.  
    <cache
  43.  
    name= "cloud_user"
  44.  
    eternal= "false"
  45.  
    maxElementsInMemory= "5000"
  46.  
    overflowToDisk= "false"
  47.  
    diskPersistent= "false"
  48.  
    timeToIdleSeconds= "1800"
  49.  
    timeToLiveSeconds= "1800"
  50.  
    memoryStoreEvictionPolicy= "LRU"/>
  51.  
     
  52.  
    </ehcache>
相關文章
相關標籤/搜索