0

基本上,我想实现 SYNC 功能;如果互联网连接不可用,数据将存储在本地 sqlite 数据库中。只要互联网连接可用,SYNC 就会开始行动。

现在,比如说;5条记录存储在本地,然后可以连接互联网。我希望更新服务器。所以,我目前做的是:

  1. 将第一条记录发布到服务器。
  2. 等待第一个请求成功。
  3. 将本地 NSNotification 发布到例程,第一条记录已在服务器上更新,现在第二个请求可以发送。
  4. 该例程在服务器上触发第二个发布请求,依此类推......

问题:这种方法是否正确有效,足以实现 SYNC 功能?或者我应该改变什么?

注意:要同步的记录将没有数量限制。

4

1 回答 1

1

好吧,这取决于您保存的数据的要求。如果只是为了备份,那么你应该没问题。如果 5 条记录以某种方式相互依赖,并且您需要从另一个设备/应用程序访问此数据,则您应该在服务器端注意要么全部写入 5 条记录,要么不写入。否则,如果只写入 3 个,您将有不一致的状态。如果其他用户也在服务器上同时读取/写入这些数据,那么您需要在写入之前对所有记录实施某种锁定,并决定当有人试图覆盖其他人的更改时如何处理冲突。

于 2013-02-12T00:56:49.627 回答