我有一个管理用户的PouchDB应用程序。
用户有一个本地的PouchDB实例,与单个CouchDB数据库同步。相当简单。
这是事情变得有点复杂的地方。我在我的设计中引入了“群组”概念。群组将是不同的CouchDB数据库,但在本地,它们应该成为用户数据库的一部分。
我在PouchDB网站上阅读了一些关于“fancy replication”(高级复制)的内容,这似乎是我要解决的问题。
现在,我的问题是,我该怎么做?更具体地说,如何从多个远程数据库复制到单个本地数据库?一些代码示例会很棒。
从下面的图表中可以看出,我需要根据用户所在的群组动态添加数据库。我也希望对我的设计进行评论。
流程是否应该像这样:
- 从用户的数据库中检索所有用户文档到
localUserDB
中。 var groupDB = new PouchDB('remote-group-url');
groupDB.replicate.to(localUserDB);
(多个PouchDB实例会有任何性能问题吗? 0_0?)- 在本地环境中,当用户进行与特定群组相关的更改时,我们通过执行以下操作确定相应的数据库并进行复制:
localUserDB.replicate.to(groupDB)
(我需要筛选复制吗?)