gpt4 book ai didi

java - overflowToDisk 如何在 ehcache 中工作?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:13:19 26 4
gpt4 key购买 nike

overflowToDisk: Sets whether elements can overflow to disk when the memory store has reached the maxInMemory limit.

据我了解,如果 memoryStoresSize 未达到 maxElementsInMemory,它不会写入磁盘。但好像不是这样的。

我有一个简单的缓存如下:

<cache name="cache" maxEntriesLocalHeap="100000" eternal="true"  
overflowToDisk="true" statistics = "true">
<terracotta clustered="false"/>
</cache>

并且我在从缓存中获取值时打印了统计信息。

System.out.println("memory size:" + cache.getMemoryStoreSize());
System.out.println("disk size:" + cache.getDiskStoreSize());

但输出显示磁盘大小不为 0,即使内存大小远小于 maxElementsInMemory。

memory size:2
disk size:186
memory size:2
disk size:186
memory size:3
disk size:186
memory size:3
disk size:186

甚至内存大小也小于磁盘大小。怎么会这样?或者我如何配置它才能按预期工作?

谢谢。

最佳答案

Ehcache 自 2.6 版以来更改了其存储模型 - 参见 this answer了解详情。

因此,您所看到的是完全正常的。

出于兼容性原因,遗留配置选项尚未重命名 - 尽管我同意描述应该如此。看看 latest documentation在磁盘支持的缓存上获得推荐的配置方式。

关于java - overflowToDisk 如何在 ehcache 中工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10750185/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com