客户端如何与服务器同步大量数据?

2019-04-04 11:03:57 +08:00
 dullwit

目前采用方案为:

1. 服务器按照版本号将一张表( 1w 左右,约 2MB )数据生成 json 文件放到 oss 上面,客户端通过版本号对比去下载

2. 如果数据表改动数据较小则生成增量包,客户端则采用增量的方式去更新

存在的问题:

增量只会生成与最近一次全量包的对比数据,但由于客户端数据版本更新不及时,不能找到增量包,就只得去更新全量。例如服务器最近的版本号规则是 v3(全)-v4(全)-v5(增),客户端此时的版本为 v3,要更新到 v5,只得下载 v5 的全量包。那么当数据更新频繁时,客户端基本都是下载全量数据

目前考虑的解决方案:

  1. 通过业务来拆分数据,将表数据按照业务等级拆分生成更新包,按照分级进行更新

  2. 通过数据改动日志记录方式(客户端判断逻辑比较复杂)

不知道还有什么其他好的方式?

835 次点击
所在节点    问与答
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/551963

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX