1

我正在使用带有同步功能的 PouchDB 5.3 和 Couchbase Sync Gateway 1.2。当我使用一小组记录(20 .. 50)时,它可以正常工作。但是我在使用 3K 时遇到了问题,因为第一次尝试同步时,它对服务器有大约 17K 的请求。

这是有这个问题的配置:

this.sync = function(remoteDatabase, onComplete, onError) {
    database.sync(remoteDatabase, {
        live: true,
        retry: false
    }).on('change', function(change) {
        // yo, something changed!
        console.log("Sync Change");
    }).on('paused', function(info) {
        // replication was paused, usually because of a lost connection
        console.log("Sync Paused");
        if (onComplete)
            onComplete();
    }).on('active', function(info) {
        // replication was resumed 
        console.log("Sync Active");
    }).on('error', function(err) {
        // totally unhandled error (shouldn't happen)
        console.log("Sync Error", err);
        if (onError)
            onError();
    }).on('complete', function(info) {
        console.log("Sync Complete");
    }).then(function(info) {
        console.log("Sync Complete");
    });
}

此外,无法检测到这 17k 个请求何时完成。

如果我将 live 方法设置为 false,它只有大约 3k 个请求,但在那之后,当双方中的任何一方都进行了一些更改时,就无法同步。

这是一组重复请求(具有不同的 uuid)

http://...._bulk_docs?_nonce=1457702282722
http://...._bulk_docs?_nonce=1457702282722
http://....._revs_diff?_nonce=1457702282818
http://....._revs_diff?_nonce=1457702282818
http://....._local/EhRrzqajjvWCiEqNXBk87A%3D%3D?
http://....._local/EhRrzqajjvWCiEqNXBk87A%3D%3D?

关于如何防止这个 17k 请求的任何想法?

如果这是强制性的,那么关于如何检测一次的任何想法都完成了吗?

谢谢!

在https://github.com/pouchdb/pouchdb/issues/4975上关注这个问题

4

1 回答 1

0

GitHub 问题已被 Nolan 关闭,因为 bing 很可能与 CouchBase Sync Gateway 不支持响应_bulk_get有关application/json。目前,这似乎是由于 CouchBase Sync Gateway 和 PouchDB 之间的兼容性有限。

于 2016-05-06T14:44:59.480 回答