Microsoft Sync Framework 系列(三):微软同步框架出现背景及要解决的问题
持續連接的C\S,B\S系統存在固有的缺陷,偶爾連接系統(OCA)在試圖解決這些問題的同時又引入了新的問題。開發offline系統存在很多挑戰,這些挑戰都是 Microsoft Sync Framework? 要面對的,并且應該為應用開發者提供合理的解決方案。
MSF is a comprehensive synchronization platform that enables developers to add synchronization capabilities to applications, services and devices. MSF solves the fundamental problem of how to synchronize any type of data in any store using any protocol over any topology. Fundamental to MSF is the ability to support offline and collaboration of data between any types of endpoints (e.g. device to desktop, device to server, etc.).
持續連接系統的不足:
- 要求實時聯網,這種要求有時是沒有必要的;
- 數據訪問速度受網絡和服務器壓力的影響;
- 單點依賴(Single Point of Failure),如果應用服務器或者數據庫出現問題,則所有客戶端都將無法操作;
- 服務器擴展性,基本上只能通過增加硬件投入來解決高負載下的性能問題;
偶爾連接應用 OCA(Occasionally Connected Application )的優勢:
- 本地數據緩存,提供離線(offline)支持;
- 合理利用客戶機的處理能力,提升系統響應速度;
- 減小服務器端應用服務器和數據服務器的壓力;
構建偶爾連接系統(Occasionally Connected System)的挑戰:
跟蹤對數據的更改(change tracking),用什么樣的方式記錄下更改的數據; 維護更改的數據(Maintaining Change Data),改變跟蹤數據會迅速增長; 沖突檢測與解決(Conflict Detection and Resolution),如何檢測沖突,如何定義沖突解決策略; 數據交換優先級(Prioritizing Data Exchange),優先交換那些重要的具有決定性意義的數據以改善系統性能; 后臺同步(Background Synchronization),最好采用異步方式同步,而不會因為數據同步過多的影響用戶的操作; 多種同步拓撲(Multiple Synchronization Topologies),可以是中心發射型,可以是端對端的P2P,也可以是簡單的C\S。 自定義的客戶端和服務器數據庫(Custom Client and Server Databases),即允許使用微軟提供的Provider進行同步,也可以通過自定義Provider來同步web services, file systems 和 custom data stores。 安全(Security),數據庫加密(Database encryption),數據庫認證(Database authentication),數據加密同步(Encryption of data synchronization),內部認證(Internal authentication)。這些都是令人頭疼的“數據同步”問題。“數據同步”問題是必須解決的問題,也是必須開發的功能。然而,數據同步并不是用戶需求。微軟曾推出兩種數據方案:遠程數據訪問(RDA), 合并復制(Merge replication),這兩種方案主要用于以數據庫作為數據源的數據同步,并且不是特別靈活,不能解決很多遺留系統問題。
在缺少統一的開發框架的情況下出現了如下問題:
- 重復發明輪子,人們創建了無數的專用的數據同步解決方案(single-purpose solutions);
- 核心的復雜的問題在所有專用解決方案中重復出現,并且不容易解決(falling into the same pitfalls explored by others);
- 這些專用解決方案往往是為了解決具體問題而不具有通用性(relied too heavily on specific topologies, data types, stores or business logic);
為此,微軟推出了 Microsoft Sync Framework (MSF),MSF 作為新一代的統一同步框架,試圖來解決或者簡化以上問題。
?
MSF 同步框架想要達到的目標:
- 強大:解決同步系統中的核心問題和困難問題;
- 靈活:數據無關,協議無關,設備無關,并且可以在原有系統中使用;
- 簡單:通過簡單的組合使用在任何架構的同步系統中;
后面文章中我們會根據具體的場景、概念、設計原理對上面提到的進行詳細介紹。
參考:
Introduction to the Microsoft Sync Framework Runtime
Introduction to Occasionally Connected Applications using Sync
Introducing Microsoft Sync Framework- Sync Services for File Systems
FLYabroad 標簽: Microsoft Sync Framework, 微軟同步框, Sync Service, 同步服務, OCA, Occasionally Connected System轉載于:https://www.cnblogs.com/flyabroad/archive/2008/05/17/1201407.html
總結
以上是生活随笔為你收集整理的Microsoft Sync Framework 系列(三):微软同步框架出现背景及要解决的问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: css教程–十步学会用css建站(全)
- 下一篇: 软件推荐---站长查询工具