嘿,我打算使用 html5 为我的最后一年项目开发一个 Web 系统,但我对如何从移动设备同步到服务器有点困惑……有没有办法从移动设备同步(SQL lite)给管理员(SQL 服务器)...请帮助我解决这个问题
问问题
105 次
1 回答
0
同步可以开始很简单,但很快就会变得相当复杂。这一切都取决于您的需求。
问自己以下问题:
- 我需要处理删除吗?- 墓碑/删除标志
- 同步是单向还是双向?- 备份/复制与完全同步
- 有什么东西需要每秒超过 100 毫秒的时间来保存吗?- 日期/时间问题,或需要重叠
- 可以一次在两个设备(或一个设备和服务器)上编辑记录吗?- 冲突
简单的解决方案是只使用“lastModified”字段并跟踪您的进度。请记住使用运行数据库的系统的日期/时间,因此在设备上获取服务器的当前 UTC 日期/时间,然后获取所有更新 <= 到该日期/时间。只需查询所有记录,因为它们比您保存的日期更新并将它们复制到另一台服务器。
更复杂的解决方案跟踪删除、处理事务(同步前开始、同步后完成、简单解决方案遗漏)、具有高级冲突解决、支持批处理等。
为了更安全,您希望停止使用日期/时间并为您的修订提供一个全局计数器。如果您想跟踪已开始但未提交其事务的更新,这将变得更加棘手(查看 SQL-Server Change Tracking,CHANGE_TRACKING_CURRENT_VERSION()
)。
可以在Microsoft Sync Framework上找到更多详细信息,作为其完成方式的一个示例。
于 2013-10-14T05:29:56.960 回答