Caching Couchbase:有可能有过时的冷缓存吗?

Caching Couchbase:有可能有过时的冷缓存吗?,caching,couchbase,Caching,Couchbase,我们正在考虑使用Couchbase作为持久缓存层。由于Couchbase首先将缓存项写入内存,然后异步同步到磁盘,所以我们担心的一个问题是崩溃一致性。如果某些缓存项在内存中被更新,并且Couchbase在提交到磁盘之前崩溃,那么当Couchbase重新启动时,这些项将过时 我的问题是: Couchbase是否会检测并报告那些过时的物品?如果是这样,我们可以丢弃这些项目,因为它们是缓存 是否有其他特定于Couchbase的方法来处理陈旧缓存问题 我认为没有办法检测文档是否过时,因为(在您的场景中

我们正在考虑使用Couchbase作为持久缓存层。由于Couchbase首先将缓存项写入内存,然后异步同步到磁盘,所以我们担心的一个问题是崩溃一致性。如果某些缓存项在内存中被更新,并且Couchbase在提交到磁盘之前崩溃,那么当Couchbase重新启动时,这些项将过时

我的问题是:

  • Couchbase是否会检测并报告那些过时的物品?如果是这样,我们可以丢弃这些项目,因为它们是缓存
  • 是否有其他特定于Couchbase的方法来处理陈旧缓存问题

我认为没有办法检测文档是否过时,因为(在您的场景中)它们在崩溃之前没有写入磁盘

但是,您可以指定创建文档的时间。默认情况下,如果写入内存,则认为写入成功。您可以添加诸如“PersistTo”之类的附加约束(在认为写入成功之前,必须将文档持久化到N个节点)