我将 ehcache 用于大量查询繁重的操作,例如,来自数据库的不同数据页面是从不同的查询值存储的。我很担心,因为 maxElements 驱逐似乎对此毫无用处,因为缓存值可能具有完全不同的内存大小,具体取决于查询返回的对象的大小。
我喜欢 softValue 过期缓存的想法,只要内存可用,值就会保存在内存中,否则会被定罪,但我不确定 EhCache 是否提供此功能。但我无法想象这是一个独特的用例,那么我应该看看其他配置吗?
我知道 Guava 提供软值过期缓存,但我不打算切换缓存库。
我将 ehcache 用于大量查询繁重的操作,例如,来自数据库的不同数据页面是从不同的查询值存储的。我很担心,因为 maxElements 驱逐似乎对此毫无用处,因为缓存值可能具有完全不同的内存大小,具体取决于查询返回的对象的大小。
我喜欢 softValue 过期缓存的想法,只要内存可用,值就会保存在内存中,否则会被定罪,但我不确定 EhCache 是否提供此功能。但我无法想象这是一个独特的用例,那么我应该看看其他配置吗?
我知道 Guava 提供软值过期缓存,但我不打算切换缓存库。
使用 Ehcache,您可以配置缓存可以在本地堆内存中使用多少字节 ( maxBytesLocalHeap
)。查看官方文档“如何调整缓存大小”。