V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
dullwit
V2EX  ›  问与答

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

  •  
  •   dullwit · 2019-04-04 11:03:57 +08:00 · 832 次点击
    这是一个创建于 1874 天前的主题,其中的信息可能已经有所发展或是发生改变。

    目前采用方案为:

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

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

    存在的问题:

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

    目前考虑的解决方案:

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

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

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

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1216 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 18:18 · PVG 02:18 · LAX 11:18 · JFK 14:18
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.