数据同步的实现

来源:互联网 发布:windows共享给linux 编辑:程序博客网 时间:2024/05/19 23:58

.net 偶尔连接的设计策略=联机状态-脱机模式=数据同步

 

偶尔连接的设计策略

偶尔连接能够提高用户的工作效率,工作在较低带宽或高延迟网络中的用户,或处于连通网络状态下的用户,可以进行脱 机工作,在网络带宽使用率较代时再联机提交自己的工作,从而可以提高仩业网络的有效利用率。

 

偶尔连接的体系设计主要有二种方法:面向数据和面向服务的方法。

 

1.面向数据

面向数据的设计是在客户端安装关系数据库系统,如SQL SERVER个人版或SQL SERVER 桌面引擎(MSDE)

他可以利用数据库系统的内置功能将本更改的数据传回服务器,检测和解决任何数据冲突 ,有效处理数据同步过程,这种方式 可以节省去开发人员编写解决数据库冲突 代码的大部分事件。

 

面向数据的偶尔连接设计适合于两层应用程序,构成用户界面的windows窗体和额户端的业务辑,包括数据库都在客户端,当客户端连接后,依靠已定义的数据业务逻辑和传输协义将更改后的数据复制到企业服务器中,同时服务器端更改的数据也会以相反方向同尗到额户端,此方法比较适合于小型应用程序,他仅通过内置 的数据复制和协调冲突机制,因此,实现的难度相对简单一些,不利之处是必须在客户端部署数据库程序,这样要考虑本地数据库的部署费用。

 

2.面向服务

面向服务的方法叉是客户端脱 机时,将信息存储在消息中或者使用本地XML文件,客户端连接后,脱机时保存在消息队列中的消息将被发送到服务器进行处理,如果采用XML文件,应用程序将通过调用WEB服务了,把客户端脱 机后更改的数据同尗到服务器端。

 

面向服务的方法和面向数据的方法最大的不同就是将业务逻辑都放在服务器端。因此,面向服务的方法不需要在客户端部署本地关系型数据库,可以实现独立的版本控制和部署,当出现数据冲突 时,可以获得最大的控制灵活性,同时也意味着开发人员需要编写代码实现数据协调,面向服务方法主要用于企业级N层应用程序的开发。

 

系统执行脱机功能后:会按如下步骤处理:

(1)应用程序会把处于内存中的DATASET 保存到本地硬盘,保存的文件基于XML方档格式,数据的内容 将是最后脱 机前的关态。

(2)程序将一个表示是否脱 机的变量设为假,以后数据发生更改时,应用程序将更改数据保存到DATASET中,更改的数据行被标为已更改状态。

(3)更新应用程序界面以反映当前处于脱机状态。

如果用户在脱机模式下退出应用程序,系统将已更改的DATASET保存到磁备胎一个单独的XML文件中,客户端用户恢复联机状态后,将把已更改的数据发送到数据WEB服务了,WEB服务处理每一个更改,最后把结果发送给客户端。

 

原创粉丝点击