簡體   English   中英

同步機制,例如Java / Android中的Google雲端硬盤

[英]Sync mechanism like Google Drive in Java/Android

我正在嘗試開發一種與應用程序和服務器同步數據的機制,例如針對基於Android的應用程序之一的Google Drive / Dropbox,其中數據存儲在設備本地,並且我想與服務器同步數據。

思維方式-

1)觀察者,尋找改變並呼叫網絡服務

2)在后台運行並檢查更改的后台服務

3)設置在特定時間檢查並與服務器同步所有數據的警報

我還沒有開始選擇哪個選項,我想征求專家的意見,並希望獲得一些指導,以便我可以為自己的應用以最佳方式實現同​​步機制。

歡迎所有建議。

與以前一樣,我們的目標應該是在查詢服務器以獲取相同信息集的次數與數據一致性之間取得平衡。

為此,我會將GCM消息從服務器發送到服務器上數據已更改的設備,我將為這些更新消息計數(不生成通知)。 如果此計數超過最小閾值,我將立即要求進行UPDATE。 否則,如果在某個時期內此計數仍小於閾值計數值,我將其稱為閾值等待期,那么我也要求進行UPDATE。

更新將使用同步適配器和服務。 此鏈接說明了其基本知識。

希望對您有所幫助!

...so that I can achieve the sync mechanism in best possible way for my app

好的,BEST機制完全取決於您所開發的應用程序類型。 另外,您的選項1和2與我非常相似,只是實現上的更改很少。 但是,設備數據的更改頻率也很重要。 如果您具有身份驗證機制,則可以在每次登錄應用時配置同步。 與機密數據一樣,同步應該立即發生。

如果根據基於用戶角色的身份驗證和授權對數據進行了很好的管理,則還需要注意它們之間的同步。 例如,一個用戶更新了一個尚未同步的實體,而另一個用戶嘗試更新該實體,那么第一個用戶將看到他的更改未同步或已丟失。

最好的方法(意味着缺點最少)是在特定時間間隔或每個登錄時間同步觸發。 (仍然如我所說,取決於您的應用程序)。

希望這能消除您的部分或全部疑問。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM