更新使用时间戳数据点亮缓存

时间:2017-10-10 13:39:07

标签: caching cassandra ignite

我的问题是如何使用数据库表中的新条目更新缓存? 我的缓存有我的Cassandra表数据,直到下午3点。 直到那时用户购买了3项,所以我的缓存有3项与该用户相关的条目。

  

但过了一段时间(比如30分钟)如果用户再购买2件商品会怎样?

由于我在缓存中有3个条目,它不会从数据库查询,如何在计算最终账单时获得这2个新条目。

我有一个选择是每15分钟拨打一次cache.loadCache(null, null) ,但有些情况下每次都无法拨打电话吗?

1 个答案:

答案 0 :(得分:1)

这里更好的选择是不直接向Cassandra插入数据,而是使用Ignite。它可以在缓存中始终更新数据,而无需与DB运行任何其他同步。

但是如果你每次都选择运行loadCache,你可以在数据库中为你的对象添加一个时间戳,并实现你自己的CacheStore,它将具有只从DB加载新数据的add方法。 Here是文档的链接,它将帮助您实现自己的CacheStore。