Sync Gateway 不应该在添加到 Couchbase 服务器时清理/删除文档并且不再需要它吗?
否。您的应用程序是知道何时不再需要文档的实体,因此,应用程序有责任在不需要时删除文档。同步网关是一个同步网关,这意味着它在客户端和服务器之间同步文档,同时执行适当的访问控制策略。它无法管理您的 Android 设备上的数据 - 这是包含 Couchbase Lite 数据库的 Android 应用程序的责任。
要在将文档推送到同步网关后从您的 Android 应用程序中删除它,您可以在复制的事件回调中调用Purge API 。一旦你被通知你的应用程序已经推送了文档,你可以在本地清除它。
除此之外,我的 Android 应用程序还在移动设备上缓存文档。例如,如果我重新启动 Sync Gateway Server,则 Sync Gateway Server 中没有文档。
我建议您熟悉Couchbase Mobile如何工作的基础知识。
Couchbase Lite 是一个嵌入式数据库。它将保留您写入的数据,因此,它将在重新启动后继续存在。如果您不想在本地存储数据,请按照我之前指出的步骤操作。
Sync Gateway 仅用于内存。数据不存储在 Sync Gateway 中。数据保存在 Couchbase 服务器中。因此,当您重新启动同步网关时,它会丢失其内存缓存。下一次,有来自客户端的复制/同步请求,它将从 Couchbase 服务器中提取文档。重新启动 Sync Gateway 时,您永远不会丢失任何数据。