低連線環境中的多主資料庫

低連線環境中的多主資料庫

我正在開發一個項目,該項目有許多客戶端設備分佈在遠端環境中,在這些環境中,連接丟失經常發生並且是預期的。客戶端在離線時繼續運行,但當這些設備可存取時,它們會從雲端中的一組伺服器接收命令,並將狀態傳達給這些相同的伺服器。

客戶端設備和伺服器都維護有關「帳戶餘額」的信息,並且該資訊在兩端都是可變的。也就是說,帳戶餘額可以由雲端介面或本地客戶端介面的使用者進行更改,並且即使在客戶端離線時也可以進行這些更改。

據我了解,從某種意義上來說,這是一個「多主」資料庫設定。我想知道有哪些項目可以幫助管理這種拓撲。有類似項目的例子嗎?或是有其他值得考慮的架構嗎?

答案1

Tungsten 可以設定在非同步多主架構中,這本質上就是您所追求的,並且可以與各種 DB 一起使用:https://code.google.com/p/tungsten-replicator/

該應用程式可以設定為使用利用 Tungsten 的本機 MySQL 後端,並且只要在線,它就會與其他伺服器同步。離線時,更新將排隊等待再次上線。用戶端希望透過 VPN 或類似的方式(例如 HTTPS / SSH 隧道)進行連線。

相關內容