我可以使用@ClientCacheEntryExpired从Infinispan服务器侦听器检索过期的缓存项吗



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

这个功能使我不必编写自己的收割者,但据我所知,HotRod客户端实现并没有提供相同的功能。我可以用@ClientCacheEntryExpired检测过期,但显然,在从缓存中删除条目后,事件会触发,侦听器唯一可用的数据是密钥。

有没有一种(简单的(方法可以复制嵌入的行为?还是我必须实现我自己的到期收割器?

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

离题;Infinispan服务器可以与JDBC存储(文档(通信,并且您可以使用写后持久性配置驱逐,以便在外部存储数据(请参阅驱逐和写行为文档(。