【问题标题】:Couchbase Lite and CouchDbCouchbase Lite 和 CouchDb
【发布时间】:2017-03-01 00:15:21
【问题描述】:

我已经构建了一个基于 Couchbase Lite 的 Android 应用程序,它通过 Sync Gateway 与 Couchbase 数据库通信。我现在尝试让 Couchbase Lite 使用 CouchDB 2.0 数据库进行复制,但出现以下错误:

W/RemoteRequest: com.couchbase.lite.replicator.RemoteRequest {POST,
http://192.168.1.5:5984/_revs_diff}: Got error status: 404 for
http://192.168.1.5:5984/_revs_diff. Reason: Object Not Found
W/Sync: PusherInternal{http://192.168.1.5:5984, push, 12ff9}: Progress:
set error =com.couchbase.lite.replicator.RemoteRequestResponseException:
Object Not Found

请注意,为此我不会通过 Sync Gateway,而是将 Couchbase Lite 直接指向 CouchDB Url。

我不知道我是否需要通过 Sync Gateway,但在阅读 Couchbase lite 上的 Couchbase 文档后,我的印象是我在连接到 CouchDb 数据库时不需要,而这篇文章似乎支持了这一点。 https://github.com/couchbase/sync_gateway/issues/312

有人可以确认一下 couchbase lite 是否可以直接使用 CouchDb 2.0 数据库进行复制,如果可以,正确的设置方法是什么?

此外,该应用将被许多网站使用,一个网站可以由一个或多个用户组成。我考虑切换到 CouchDb 的原因是我可以为每个站点拥有一个数据库,这在 Couchbase 中似乎并不容易实现。但是,我现在在 Couchbase 中发现了 Channels,它允许我使用一个数据库,但可以访问受站点限制的文档(即,一个站点可以有很多用户,并且所有用户都应该可以访问该站点的所有文档)。

在 CouchDb 中使用单独的数据库或在 Couchbase 中使用通道有什么优缺点?

谢谢。

【问题讨论】:

    标签: android couchdb couchbase couchbase-lite


    【解决方案1】:

    回应几点:

    主要是我认为你可以在 Couchbase 中轻松地做你想做的事。 Couchbase Server 中的存储桶在某种程度上相当于单独的数据库。所以你可以这样分割你的网站。正如您所见,Sync Gateway 中的通道可让您更好地控制分离数据和控制访问。

    Couchbase Lite 应该能够与 CouchDB 同步,但这并没有经过大量测试。很难从您的 sn-p 中判断出了什么问题。您可以查看这篇文章以获得一些想法:CouchDB: how to use _revs_diff to get document revision ID

    Sync Gateway 公开了一种 CouchDB 复制端点的超集,因此您可以更灵活地使用 Couchbase Lite 和 Sync Gateway。

    【讨论】:

      【解决方案2】:

      正如@Hod 所说,不同的存储桶相当于 Couch DB 中的不同数据库,因此您可以这样做。

      其次,如果可以的话,绝对鼓励使用 sync_gateway 的 channels 属性,因为创建单个存储桶优于多个存储桶,并且我已将 sync_gateway 与 couch Lite 和 Couch 服务器一起使用,它工作得非常好而且准确,所以我认为你应该使用 sync_gateway 和 channels 而不是创建多个存储桶

      【讨论】:

        猜你喜欢
        • 2013-12-27
        • 1970-01-01
        • 1970-01-01
        • 2018-11-26
        • 2018-05-02
        • 2011-07-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多