1

当缓存条目从内存缓存中被驱逐时,标准驱逐事件会触发。在我们的例子中,只有当它从配置为 SingleFileStore 的重启持久磁盘缓存中被驱逐时,我们才需要通知。这甚至可能吗?

我们使用 Infinispan 作为本地缓存,所以任何集群考虑对我们来说都是没有意义的。

我们的缓存配置如下:

    manager.defineConfiguration("eviction-test-cache", new ConfigurationBuilder()
            .persistence().addSingleFileStore().location("eviction-test")
                .maxEntries(500).preload(true).purgeOnStartup(false)
            .eviction().strategy(LRU).maxEntries(100L)
            .build());
4

2 回答 2

2

这是交叉发布到:https ://developer.jboss.org/message/935198#935198

引用我的回复:

这里的 maxEntries=500 特定于 SingleFileStore 并在没有通知的情况下删除条目,因为这超出了正常的驱逐范围。如果你愿意,你可以创建一个改进的 JIRA 来专门为 SingleFileStore 添加某种通知(尽管我不太确定那会是什么样子)。另一种选择是您可以使用新的软索引文件存储 [1],它可以在 [2] 处获取(这不存在将每个键存储在内存中的问题。

[1] http://infinispan.org/docs/8.0.x/user_guide/user_guide.html#_soft_index_file_store

[2] http://mvnrepository.com/artifact/org.infinispan/infinispan-persistence-soft-index

于 2015-07-06T12:09:22.130 回答
0

不,股票不可能SingleFileStore

于 2015-07-06T11:53:56.823 回答