Ehcache配置引數簡介

2021-08-31 13:03:35 字數 2377 閱讀 1939

ehcache配置引數簡介

< defaultcache

maxelementsinmemory = "10000"

maxelementsondisk = "0"

eternal = "true"

overflowtodisk = "true"

diskpersistent = "false"

timetoidleseconds = "0"

timetoliveseconds = "0"

diskspoolbuffersizemb = "50"

diskexpirythreadintervalseconds = "120"

memorystoreevictionpolicy = "lfu"

/>

< cachename = "mycache"

maxelementsinmemory = "100"

maxelementsondisk = "0"

eternal = "false"

overflowtodisk = "false"

diskpersistent = "false"

timetoidleseconds = "120"

timetoliveseconds = "120"

diskspoolbuffersizemb = "50"

diskexpirythreadintervalseconds = "120"

memorystoreevictionpolicy = "fifo"

/>

diskstore:指定資料儲存位置,可指定磁碟中的資料夾位置

defaultcache: 預設的管理策略

以下屬性是必須的:

name:cache的名稱,必須是唯一的(ehcache會把這個cache放到hashmap裡)。

maxelementsinmemory:在記憶體中快取的element的最大數目

maxelementsondisk:在磁碟上快取的element的最大數目

,預設值為0,表示不限制。

eternal:設定快取的elements是否永遠不過期。如果為true,則快取的資料始終有效,如果為false那麼還要根據timetoidleseconds,timetoliveseconds判斷

overflowtodisk:如果記憶體中資料超過記憶體限制,是否要快取到磁碟上。

以下屬性是可選的:

timetoidleseconds:物件空閒時間,指物件在多長時間沒有被訪問就會失效。只對eternal為false的有效。預設值0,表示一直可以訪問。

timetoliveseconds:物件存活時間,指物件從建立到失效所需要的時間。只對eternal為false的有效。預設值0,表示一直可以訪問。

diskpersistent:是否在磁碟上持久化。指重啟jvm後,資料是否有效。預設為false。

diskexpirythreadintervalseconds:物件檢測線程執行時間間隔。標識物件狀態的執行緒多長時間執行一次。

diskspoolbuffersizemb:diskstore使用的磁碟大小,預設值30mb。每個cache使用各自的diskstore。

memorystoreevictionpolicy:如果記憶體中資料超過記憶體限制,向磁碟快取時的策略。預設值lru,可選fifo、lfu。

快取的3 種清空策略

fifo,first in first out (先進先出).

lfu, less frequently used (最少使用).意思是一直以來最少被使用的。快取的元素有乙個hit 屬性,hit 值最小的將會被清出快取。

lru,least recently used(最近最少使用). (ehcache 預設值).快取的元素有乙個時間戳,當快取容量滿了,而又需要騰出地方來快取新的元素的時候,那麼現有快取元素中時間戳離當前時間最遠的元素將被清出快取。

Ehcache配置引數簡介

defaultcache maxelementsinmemory 10000 maxelementsondisk 0 eternal true overflowtodisk true diskpersistent false timetoidleseconds 0 timetoliveseconds...

Ehcache快取配置

cache配置 name cache的唯一標識 maxelementsinmemory 記憶體中最大快取物件數。maxelementsondisk 磁碟中最大快取物件數,若是0表示無窮大。eternal element是否永久有效,一但設定了,timeout將不起作用。overflowtodisk ...

ehcache簡單配置

timetoliveseconds和timetoidleseconds比較 只有在eternal為false時,這2個屬性才有效 現在假設有如下配置 timetoidleseconds 60 timetoliveseconds 180 則乙個資料被新增進快取後,該資料能夠在快取中存活的最長時間為18...