有没有办法在两个pouchdb实例之间同步?

时间:2016-11-11 19:29:16

标签: couchdb pouchdb nosql

我正在尝试构建一个包含以下内容的拓扑:

  • 通过LAN连接运行本机应用程序的两个桌面。

  • 同一个应用的网络版。

桌面只能间歇性地连接到Internet,因此本机应用程序和Web应用程序都需要具有在线同步的单独数据存储。

为此,我发现了couchdb,它似乎是完美的候选人。我在Electron上构建桌面应用程序,所以我想在它上面使用pouchdb并在服务器服务器上将它与couchdb同步。

问题是,这两个运行带有pouchdb的Electron应用程序的台式机需要通过LAN 相互同步。 pouchdb是否提供与远程pouchdb同步的功能?我只看到同步小袋和沙发的文档。

https://pouchdb.com/guides/databases.html

我对数据库之间同步的概念很陌生。如果我问一些显而易见的事情(或者显然是不可能的话),我不知道。感谢帮助。

1 个答案:

答案 0 :(得分:5)

如果您想在任意数据通道上同步p2p,您可能需要查看此插件:https://github.com/nolanlawson/pouchdb-replication-stream

但是,在您的情况下,由于您正在编写本机应用程序,最简单的方法是使用express-pouchdb在两个桌面应用程序之间进行同步。这是一段视频,展示了如何做到这一点:https://www.youtube.com/watch?v=5iTzm8sTtd4

任何两个PouchDB对象都可以彼此同步;因此,只要您有PouchDB个工作对象,就可以将它们与db1.sync(db2)同步。