服务器A
服务器B
服务器C核心服务器S
现在问题是:
在A,B,C上产生的各种数据实时同步到S(S起到将各子服务器数据汇总功能),
然后S再将汇总的数据实时同步到A,B,C,使A,B,C的数据一致。以上功能在下还是没想通是用什么方式来实现较为合适。
想过用MSSQL自带的发布复制等功能来同步,但,做不到“实时”
请大伙们发表一下数据库是:MSSQL
开发语言:C#
解决方案 »
- c# HttpWebRequest 操作超时
- ASP.NET 如何在服务器端获取 GridView 单元格里面 textbox 的文本
- 急。需各位帮忙!
- 请教个WPF问题
- 关于VS中与SQL数据库链接的问题(急)
- 求各位大侠帮详细解释一下语句 答辩用 谢谢
- 一天都没搞定(access数据库):Could not compile the mapping document:
- 如何把excel中的数据导到一个表中(c#)
- 请教winform报表打印的问题,我用的crystalviewer
- 关于打开自定义文件自动加载数据
- 如何刷新COOKIE的超时时间?
- 使用Dispose了再使用析构函数有何意义,难道能回收两次?
sql server 个人版 或 sql server 桌面引擎(MSDE)
他可以利用数据库系统的内置功能将本地更改的数据传回服务器,检测和解决任何数据冲突,有效处理数据同步过程,这种方式可以节省去开发人员编写解决数据库冲突代码的大部分事件. 面向数据的偶尔连接设计适合于两层应用程序.构成用户界面的 Windows 窗体和客户端的业务逻辑,包括数据库库都在客户端. 当客户端连接后,依靠已定义的数据业务逻辑和传输协议将更改后的数据复制到企业服务器中,同时服务器端更改的数据也会以相反方向同步到客户端.此方法比较适合于小型应用程序,他仅通过内置的数据复制和协调冲突机制,因此,实现的难度相对简单一些,不利之处是必须在客户端部署数据库程序,这样要考虑本地数据库的部署费用.2.面向服务
面向服务的方法就是客户端脱机时,将信息存储在消息中或者使用本地 XML 文件.客户端连接后,脱机时保存的在消息队列中的消息将被发送到服务器进行处理.如果采用XML 文件,应用程序将通过调用 WEB 服务,把客户端脱机后更改的数据同步到服务器端面向服务的方法和面向数据的方法最大的不同就是将业务逻辑都放在服务器端.
因此,面向服务的方法不需要在客户端部署本地关系型数据库,可以实现独立的版本控制和部署,当出现数据冲突时,可以获得最大的控制灵活性,同时也意味着开发人员需要编写代码实现数据协调.面向服务方法主要用于企业级N 层应用程序的开发.系统 执行脱机功能后: 会按如下步骤处理:
(1) 应用程序会把处于内存中的 DataSet 保存到本地硬盘,保存的文件基于 XML 文档格式,数据的内容将是最后脱机前的状态
(2) 程序将一个表示是否脱机的变量设为假,以后数据发生更改时,应用程序将更改数据保存到 DataSet 中,更改的数据行被标为已更改状态
(3) 更新应用程序界面以反映当前处于脱机状态.如果用户在脱机模式下退出应用程序,系统将已更改的 DataSet保存到磁盘一个单独的 XML 文件中.客户端用户恢复联机状态后,将把已更改的数据发送给数据 WEB 服务, WEB 服务处理每一个更改,最后把结果发送给客户端..
====================
根据你 描述的 用 第2 中方法 比较合适
========数据冲突处理 :
保守 式并发 会使数据一值 处于锁定状态.能够最高程度的保证输据的完整性.但是可用性底.
大部分 解决方案不会采用这种方式..
开放式并发是 数据冲突 处理的最好方式........实现开放式并发 依靠数据集 DataSet 的功能.