任何人都可以告诉我,Apache Ignite中是否提供任何基于时间的触发策略?
我有一个对象,该对象的到期日期为该日期(时间戳)到期时,我想更新此值并在Cache中覆盖它,是否可以在Apache Ignite中使用
提前致谢
您可以在Apache Ignite中使用急切的TTL:到期策略配置基于时间的到期策略。这样,对象将在一定时间后急切地从缓存中过期。
然后,您可以订阅javax.cache.event.CacheEntryExpiredListener,它将在每次到期后触发,并从该侦听器更新缓存。但是,当条目已经从缓存中过期时,以及在将更新的值放入缓存中之前,似乎会有一个小窗口。
如果以上窗口对您不可接受,则可以简单地定期从缓存中查询所有条目,并更新所有超过特定到期时间的条目。在这种情况下,您必须确保所有条目都具有时间戳记字段,该时间戳记将在SQL查询中被索引和使用。像这样:
SELECT * from SOME_TYPE,其中时间戳> 2;
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句