Infinispan二级缓存自定义退出策略



我计划使用infinispan作为我的Hibernate应用程序L2缓存。我的所有实体都有一个生命周期属性[新建->运行->完成]。最初,我的实体处于新状态,随着时间的推移,它会移动到其他状态。

简单地说,当实体生命周期属性状态到达完成状态时,我想从缓存中驱逐实体。据我所知,Infinispan不支持自定义驱逐策略。如何处理我的情况?

我会在适当的时候使用Cache API中的evict(key)方法来实现我自己的逻辑。

public void evevt (K key)

从缓存内存中移除条目。注意条目是未从任何已配置的缓存存储或中的任何其他缓存中删除集群(如果在集群模式下使用)。使用Cache.remove(Object)来从整个缓存系统中删除一个条目。

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

最新更新