我正在使用带有同步功能的 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 请求的任何想法?
如果这是强制性的,那么关于如何检测一次的任何想法都完成了吗?
谢谢!