希望以此为您提供专家设计/逻辑建议。
上下文
因此,我开始构建一个混合移动应用程序,我要实现的功能之一是双向同步。用户可以脱机使用该应用程序,并且当有Internet连接时,它会同步到我的远程数据库。还有一种情况,用户可能有多个移动设备。
我到目前为止所做的事情
在服务器上,我有PHP / MySQL
在移动设备上,我将Lovefield(IndexedDB)用于本地/离线
我已经熟悉将本地更新推送到远程,反之亦然 反之亦然,通过JSON / AJAX
我也已经非常熟悉使用JS来检测互联网质量 连接
问题
考虑到性能/效率,就如何检查和执行本地到远程和远程到本地的更新而言,什么是设计/逻辑最佳实践,以便该应用程序可以优雅地进行双向同步吗?
注意 我知道实现此目的的一种方法是使用GUID,upate类型的标志和时间戳。使用此功能,您可以比较具有更新(基于时间戳)更新的每一行,然后更新标志。
我对此方法的关注在于,它会强制进行逐行比较,这可能会影响性能。
有替代方法吗?
谢谢!