您现在的位置是:首页 >

数据同步方式 微软同步框架中的自定义数据同步基础

火烧 2022-11-14 05:56:19 1067
微软同步框架中的自定义数据同步基础   Micro oft Sy c Framework(MSF)为我们提供了进行同步应用开发的基础框架和 API 这些 API 即有基于托管代码的 也有基于非托管代码

微软同步框架中的自定义数据同步基础  

  Microsoft Sync Framework(MSF)为我们提供了进行同步应用开发的基础框架和 API 这些 API 即有基于托管代码的 也有基于非托管代码的 也就是说我们既可以开发基于 NET平台使用托管 API 的同步应用 也可以开发基于WIN 平台非托管 API 的同步应用

  MSF 只是一个框架 一个软件的半成品 它可以提供一些同步应用的通用基础功能 但是它没有办法知道我们要同步那里的数据 是单向 双向还是多向 冲突如何解决等问题 也没有办法了解我们业务系统的逻辑 所以我们的任务是使用 MSF 提供的基础来开发自定义的同步系统来满足我们自身系统同步的需要

  使用 MSF 同步数据存储(replica)需要三个基本组件 synchronization session(同步会话 在本系列中简称 session)和两个 synchronization provider(同步提供者 在本系列中简称 provider)

  同步时应用程序创建 session 并且传入相应的 source provider 和 destination provider 来初始化同步 同步过程中 session 使用 source provider 来获取 source replica 的变化 并将变化通过 destination provider 应用到 destination replica 创建自定义的同步 provider 是使用 MSF 的核心

  provider 的职责

   管理 replica 的 metadata 和 knowledge 同时还有每一个要被同步的 item 的 metadata

   传输实际的 item 数据 从自己的 data store 中传出或者将其他 data store 的数据传入

   使用 Sync Framework 中的 API 来 enumerate change (作为 source)或者 detect conflicts apply changes (作为 destination)

  provider 是 MSF 框架的核心 主要的功能是管理元数据 Sync Framework 提供托管和非托管的 API 来帮助我们开发 Provider 这个以后实例中会讲到

  同步算法

数据同步方式 微软同步框架中的自定义数据同步基础

  单向同步(one way synchronaztion)

   session 取得 destination replica 的 knowledge 并发送给 source provider

   source provider 利用 destination 的 knowledge 找出需要发送到 destination 的更改

   source provider 将刚刚枚举出的更改传递给 session

   session 利用 destination provider 来检测冲突并将源发送过来的变化(change)应用到 destination replica

  两个 replica 之间的双向同步(Two way synchronization)可以通过两次单向同步完成

  与一个计算机连接的 N 个 replicas 之间的多路同步(N way synchronization)执行过程

   所有 replica 通过 one way synchronization 方式将自身数据同步到中心复本(central replica)

   所有冲突在中心复本(central replica)上处理

   所有 replica 通过 one way synchronization 方式从中心复本(central replica)同步到本地

lishixinzhi/Article/program/net/201311/13785  
永远跟党走
  • 如果你觉得本站很棒,可以通过扫码支付打赏哦!

    • 微信收款码
    • 支付宝收款码