我当前的配置如下,我打算只缓存最多 30 个元素,并在数量超过 30 时驱逐最旧的元素:
<ehcache>
<diskStore path="/path/to/store/"></diskStore>
<cache name="myCache"
eternal="false"
maxEntriesLocalHeap="30"
maxEntriesLocalDisk="30"
memoryStoreEvictionPolicy="FIFO">
<persistence strategy="localTempSwap"/>
</cache>
</ehcache>
我有另一个计划的作业,它每分钟运行一次,将一个新元素放入缓存中。所以我希望在最近 30 分钟内只获得 30 个元素。但是到期/驱逐并不像预期的那样。一些非常旧的元素仍然保留,而最近 30 分钟内的一些元素却被意外驱逐。我在这里错过了什么吗?
我已经阅读了 ehcache 中的过期/驱逐相关文档,但没有找到任何线索。希望有人可以提供帮助:)
顺便说一句,ehcache 版本是 2.6.6