【发布时间】:2019-09-11 12:20:09
【问题描述】:
我在测试infinispan集群节点缓存的过期方式时,发现当节点达到最大空闲时间时,不会从集群中的其他节点获取“最后一次访问该条目的时间”,而是直接失效节点的缓存条目。例如:我启动了两个节点A和B,设置缓存的最大空闲时间为10s。在测试开始时,我向节点 A 发送了一个请求以访问数据库记录并将数据库记录写入缓存。这时节点A将数据缓存同步到节点B。然后在5s,我访问了节点A的缓存条目,10s后访问了节点B。发现Node B的缓存入口无效,Node B从数据库中取出数据库记录,写入缓存并同步到其他节点,而不是把缓存当作有效。
为什么和文档中的描述不一样? http://infinispan.org/docs/stable/user_guide/user_guide.html#expiration_details
关于集群节点缓存过期失效的配置,我配置如下:
Configuration C = new ConfigurationBuilder()
.expiration().enableReaper(). wakeUpInterval(50000L).maxIdle(10000l).build();
【问题讨论】:
-
什么是 Infinispan 版本?
标签: infinispan