提到緩存,有兩點是必須要考慮的:
(1)緩存數據和目標數據的一致性問題。
(2)緩存的過期策略(機制)。
其中,緩存的過期策略涉及淘汰算法。常用的淘汰算法有下面幾種:
(1)FIFO:First In First Out,先進先出
(2)LRU:Least Recently Used,最近最少使用
(3)LFU:Least Frequently Used,最不經常使用
注意LRU和LFU的區別。LFU算法是根據在一段時間里數據項被使用的次數選擇出最少使用的數據項,即根據使用次數的差異來決定。而LRU是根據使用時間的差異來決定的。
一個優秀的緩存框架必須實現以上的所有緩存機制。例如:Ehcache就實現了上面的所有策略。
(友情提示:本博文章歡迎轉載,但請注明出處:hankchen,http://www.tkk7.com/hankchen)