0

嘿,我打算使用 html5 为我的最后一年项目开发一个 Web 系统,但我对如何从移动设备同步到服务器有点困惑……有没有办法从移动设备同步(SQL lite)给管理员(SQL 服务器)...请帮助我解决这个问题

4

1 回答 1

0

同步可以开始很简单,但很快就会变得相当复杂。这一切都取决于您的需求。

问自己以下问题:

  • 我需要处理删除吗?- 墓碑/删除标志
  • 同步是单向还是双向?- 备份/复制与完全同步
  • 有什么东西需要每秒超过 100 毫秒的时间来保存吗?- 日期/时间问题,或需要重叠
  • 可以一次在两个设备(或一个设备和服务器)上编辑记录吗?- 冲突

简单的解决方案是只使用“lastModified”字段并跟踪您的进度。请记住使用运行数据库的系统的日期/时间,因此在设备上获取服务器的当前 UTC 日期/时间,然后获取所有更新 <= 到该日期/时间。只需查询所有记录,因为它们比您保存的日期更新并将它们复制到另一台服务器。

更复杂的解决方案跟踪删除、处理事务(同步前开始、同步后完成、简单解决方案遗漏)、具有高级冲突解决、支持批处理等。

为了更安全,您希望停止使用日期/时间并为您的修订提供一个全局计数器。如果您想跟踪已开始但未提交其事务的更新,这将变得更加棘手(查看 SQL-Server Change Tracking,CHANGE_TRACKING_CURRENT_VERSION())。

可以在Microsoft Sync Framework上找到更多详细信息,作为其完成方式的一个示例。

于 2013-10-14T05:29:56.960 回答