在Rails应用程序和iPhone应用程序之间同步数据的策略

jes*_*rry 17 iphone synchronization web-services ruby-on-rails

我写了许多从Web服务中提取数据的iPhone应用程序,我一直致力于在iPhone应用程序和Web应用程序之间同步数据,但我一直认为可能有更好的方法来处理同步.

我想知道你用什么策略在你的iPhone(阅读:移动)应用程序和你的Rails(阅读:web)应用程序之间同步数据.

  • 有什么策略可以扩展得特别好吗?
  • 你是如何处理大量数据的?(你使用分页回复吗?)
  • 如何确保数据不被覆盖?
  • 是否有理由避免使用Ruby on Rails?
    • 如果是的话,你能建议一个替代方案吗?替代方案有什么好处?
  • 什么策略失败了?
    • 为什么你认为那些策略失败了?

我希望能够在服务器上保留所有数据修改,但是我即将开始工作的特定应用程序需要能够在断开网络连接时进行操作.

用户将能够更新移动设备上的数据并通过Web应用程序更新数据.

当用户的移动设备连接到服务器时,任何本地更改都将被推送到服务器.

jes*_*rry 4

自从我问这个问题以来已经过去了大约两年,情况已经发生了巨大的变化。现在是后端即服务提供商,例如Kinvey,Apple 发布了 iCloud,并且一些用于与外部数据源同步的开源项目也如雨后春笋般涌现。

最终,我最终只需要在设备上保留最新服务器数据的副本,因此我向每个模型对象添加了一个时间戳,并设置 Web 服务以提供自我传入的时间戳以来更新的所有对象。 API 将以 FIFO 顺序输出所有对象,我可以在手机上使用这些对象,并且对于后续调用,我会要求提供自设备上的最大时间戳以来更新的所有内容。在实践中,这效果非常好。