Infinispan二级缓存自定义驱逐策略

问题描述:

我打算使用infinispan作为我的Hibernate应用程序二级缓存。我的所有实体都有一个生命周期属性[新建 - >运行 - >完成]。最初我的实体处于新状态,当时间流逝时,它会移动到其他状态。Infinispan二级缓存自定义驱逐策略

在实体生命周期属性状态到达完成状态时,我只想从缓存中驱逐实体。就像我的理解一样,Infinispan不支持定制驱逐策略。什么是处理我的情况的最佳方式?

我会在正确的时间从Cache API使用evict(key)方法实现自己的逻辑。

公共无效逐出(K键)

驱逐从缓存内存中的条目。请注意,条目 不会从群集中的任何已配置的缓存存储或 中的任何其他缓存中删除(如果在群集模式下使用)。使用Cache.remove(Object)至 从整个缓存系统中删除一个条目。

一旦具有"key1"的实体达到其完成状态,您可以触发ispnCache.evict("key1");进行驱逐。