0

我正在修改嵌入式 Infinispan 应用程序以使用 Infinispan 服务器和 HotRod 客户端。嵌入式实现依赖于在侦听器中检测缓存过期事件。使用“pre”事件,我可以读取过期条目并更新外部数据。

此功能使我不必编写自己的 reaper,但据我所知,HotRod 客户端实现不提供相同的功能。我可以使用@ClientCacheEntryExpired 检测到过期,但显然该事件在从缓存中删除条目后触发,并且侦听器唯一可用的数据是键。

有没有一种(简单的)方法来复制嵌入的行为?还是我必须实施自己的到期收割机?

4

1 回答 1

2

您可以自定义事件(请参阅文档)以包含已删除的值,但该事件将始终在删除后触发。

无关; Infinispan 服务器可以与 JDBC 存储(文档)进行通信,并且您可以使用后写持久性配置驱逐以在外部存储数据(请参阅驱逐Write-Behing文档)。

于 2020-09-14T09:55:30.697 回答