2016-11-11 103 views
1

我試圖建立它由以下的拓撲:有兩種方法可以在兩個pouchdb實例之間同步嗎?

  • 兩個桌面連接在局域網上運行的本地應用。

  • 同一個應用程序的網頁版本。

的臺式機將只具有與因特網的連接間歇性,所以無論是本地應用程序和Web應用程序需要有哪個同步在線時單獨的數據存儲。

爲此,我發現couchdb似乎是一個完美的候選人。我在Electron上構建桌面應用程序,所以我在考慮使用pouchdb,並在線時將它與服務器服務器上的couchdb同步。

但問題是,這兩個桌面運行與pouchdb電子應用程序將需要通過LAN彼此同步。 pouchdb是否提供了與遠程pouchdb同步的功能?我只看到同步袋和沙發的文檔。

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

我真的很新的數據庫之間進行同步的概念。不知道,如果我問一些明顯的(或者顯然不可能的)。感謝幫助。

+0

知道最好的方法是測試它:)但我認爲你無法遠程同步IndexedDB(使用PouchDB創建本地數據庫)。一種解決方案是在每個應用程序中安裝一個CouchDB。 –

+0

也許這很有趣:https://pouchdb.com/adapters.html#pouchdb_over_http請確保檢查關於PouchDB服務器的部分 – Phonolog

+0

@Phonolog是不是像這樣的couchdb本身的替代品?你說我可以在Electron應用程序中運行一個pouchdb服務器?並從我的應用程序撥打電話到pouchdb服務器?在發佈這個問題之前,我確實檢查過這個頁面,但沒有看到它,因爲它看起來像應用服務器端的沙發協議的實現,並與網絡上客戶端的嵌入式pouchdb同步。我沒有真正發現將pouchdb服務器嵌入到電子應用程序中的任何信息。 – alokraop

回答

4

如果要同步於任意的數據通道P2P,你可能想看看這個插件:https://github.com/nolanlawson/pouchdb-replication-stream

在你的情況,不過,因爲你正在寫一本機應用程序,死最簡單的方法這是否使用express-pouchdb在兩個桌面應用程序之間進行同步。下面是一個視頻,顯示如何完成這項工作:https://www.youtube.com/watch?v=5iTzm8sTtd4

任意兩個PouchDB對象可以相互同步;所以只要你有工作PouchDB對象,你可以將它們與db1.sync(db2)同步。

+0

哦,這看起來正是我想要的。將檢查出來。非常感謝:-D – alokraop

相關問題