Infinispan的数据驱逐(Infinispan data eviction)

2019-10-20 06:50发布

我用的Infinispan缓存版本5.1.6.FINA。 我已经配置命名缓存:

<namedCache name="cacheName">
    <locking lockAcquisitionTimeout="5000" />
    <eviction maxEntries="10" strategy="NONE" />
    <expiration lifespan="-1" maxIdle="-1" />
</namedCache>

我用它来一些数据只存储在内存中。 我创建缓存期间使用此配置,其中关键是Long和价值是String并保持有只有4永远只有4个元素为此我已经硬编码了4个按键:1L,2L,3L,4L,有时只是更改这些元素的值。

如果缓存保存2个元素键1L和2L和一些值,我尝试添加另两个与他的价值观,他们重放对方。 因此,作为一个结果缓存保存只是3键1L,2L,3L或1L,2L,4L元素。 我试图改变驱逐策略,但没有帮助。 此外,我可以说,这是当地的环境,非集群。

可能有人解释我的这种行为?

Answer 1:

如果你有maxEntries=10 ,我希望你将有±8项在缓存中,而不仅仅是3.但是总体来说,答案就在这里:

  • 缓存的条目数从未达到配置maxEntries,这是为什么?
  • 高级驱逐内幕 (还描述在这里 )


文章来源: Infinispan data eviction