配置为
<cache name="authorizationCache"
maxEntriesLocalHeap="5000"
eternal="false"
timeToIdleSeconds="120"
timeToLiveSeconds="180"
overflowToDisk="false"
diskPersistent="false"
/>
设置过期时间为 2 分钟,最大存活时间为 3 分钟,我等 10 分钟后 caches.size() 查询结果 > 0
这个时候如果用 foreach 遍历打印出 key 和 value 会看到 key 存在 但是 value 为 null
遍历之后 再次输出 caches.size() 结果才是 0
这就是我奇怪的 ehcache 的 key 为何一直存在...
即使这个时候 value 已经为 null 了, 但只有当我遍历 value 的时候,才会把这些 key 删除