现在服务端对Task进行了修改,客户端要通过json接口及时得到服务端的修改,
与此同时,客户端如果对Task进行了修改,服务端也要通过接口得到客户端的修改,并及时在服务端数据库保存。
但是现在客户端,是手机,而且是可以离线操作的,也就是说,手机离线操作了的内容,需要在联网之后通过点击同步按钮进行同步。
而且一个User对应多个手机,而手机都是可以离线操作的。
后来我想了个方法,就是利用类似svn的机制,类似有道云笔记,进行同步操作。
但是我没想明白的是,如果有大量数据,比方说1万条,怎么保证这1万条数据,完全同步,而且同步的速度要足够快。
数据在客户端可以修改,在服务端也能修改。
数据需要保证客户端和服务端的一致性。
数据同步需要速度很快。
比方说我现在有1000条数据同步了,有20条数据没同步,那怎么能知道这20条是没同步的?是每次客户端把所有的id号传到服务端?这肯定是不行的。
7 个解决方案
#1
去看看resync实现算法
#2
没同步的存本地,判断联网了,或者用户写同步了,就去同步,然后清除本地没同步的数据。
这样行不行?
这样行不行?
#3
一般是设置状态位
#4
本地要能离线查看的,所以不能清除
#5
那就留着,更好了,呵呵!
#6
恩 数据库里面加个修改标签..... 来标记未上传的信息.....这样回传服务器的数据量就会变小 同样数据库端做修改标记 将修改过的相关ID依次发送修改后的数据给客户端.....不知道这样做能否满足楼主的需要........
#7
#1
去看看resync实现算法
#2
没同步的存本地,判断联网了,或者用户写同步了,就去同步,然后清除本地没同步的数据。
这样行不行?
这样行不行?
#3
一般是设置状态位
#4
本地要能离线查看的,所以不能清除
#5
那就留着,更好了,呵呵!
#6
恩 数据库里面加个修改标签..... 来标记未上传的信息.....这样回传服务器的数据量就会变小 同样数据库端做修改标记 将修改过的相关ID依次发送修改后的数据给客户端.....不知道这样做能否满足楼主的需要........