在达到maxElementsInMemory之前创建的DiskMarker

时间:2013-03-26 16:29:49

标签: java ehcache

我正在测试内容并且当前生成并将1048576ish条目插入到缓存中。

ehcache设置为在溢出到磁盘之前接受1048579条目,这是有效的。 除非它溢出到磁盘之前就有1048576个DiskMarkers,它们使用的堆只比我的实际元素少一点。

有没有办法让ehcache在写入磁盘之前不创建DiskMarker?

ehcache.xml如下:

<ehcache>
  <diskStore path="/home/deepy/cache"/>
<cache 
    name="first" 
    maxElementsInMemory="1048579"
    eternal="true"
    overflowToDisk="true"
    memoryStoreEvictionPolicy="LFU"
    diskPersistent="false" />
</ehcache>

1 个答案:

答案 0 :(得分:0)

正如我所解释的here这是预期的行为。

因此,如果您正在寻找LFU缓存,除非您的条目比DiskMarkers大得多,否则选择ehcache是​​没有意义的。