【发布时间】:2025-12-18 20:45:01
【问题描述】:
我的 eviction max-entry 为 2000,策略为 LRIS。但是驱逐在达到 2000 的上限之前就开始了。所以,我的问题是这里是否存在某种内存限制导致这种驱逐策略起作用?如果是,它是如何以及在哪里指定的?
目前,我已将驱逐策略更改为 NONE。
任何帮助将不胜感激。
【问题讨论】:
标签: infinispan
我的 eviction max-entry 为 2000,策略为 LRIS。但是驱逐在达到 2000 的上限之前就开始了。所以,我的问题是这里是否存在某种内存限制导致这种驱逐策略起作用?如果是,它是如何以及在哪里指定的?
目前,我已将驱逐策略更改为 NONE。
任何帮助将不胜感激。
【问题讨论】:
标签: infinispan
Infinispan 尚未提供任何基于内存的驱逐。
Infinispan 使用并发散列映射,将散列空间分割成段(也称为存储桶),每个段独立地逐出它拥有的条目。
因此,当您在内部设置maxEntries=2000 时,并发哈希映射正在创建容量为maxEntries/numberSegments 的段。当一个段已满时,将在该段中触发驱逐并删除一个条目。
在您的情况下,在您达到 2000 个条目之前,某些段很快就满了。
您可以尝试以下方法:
<locking concurrencyLevel="yyy">,默认16)。段数随着并发级别的增加而增加hashCode() 函数,以更好地传播它们的键。干杯。
【讨论】: