云边统一的思考
2021-04-21 19:26:14 15 举报
简单的流程图思考
作者其他创作
大纲/内容
边端
DB主
初始同步版本:
20
人员操作:
下面演绎思路:
离线时,各自可操作。在线时,数据同步
DB备
(图2)
23
假设初始同步版本:20离线后本地已经到:25
目标:1. 离线后,各自可操作,更新各自本地数据库2. 恢复网络后,数据自动同步,且保持一致性
25
(图1)
离线时
思路步骤:初始同步后:1. 云端保持初始同步后版本号,以及在这个版本号后的操作指令。如图:5条2. 边端保持初始同步后版本号,以及在这个版本后的操作指令。如图:3条再次网络恢复:1. 边端操作命令上传2. 与云端操作命令汇总,进行指令重排,解决重复命令,命令时序性等问题!(重要)3. 新开程序,在备份库执行重排后的命令。4. 将重排后的库或者命令集同步到边端。5. 切换主备库,然后将新主库 同步到各自备库。
DB
在线时
26
恢复在线,同步指令
问题:略过中间的同步协议的传输和定义过程,抽象模型如左侧。我们要解决的问题其实是,双端写入下的数据一致性。且这个写入可能有时序性!
云端
假设初始同步版本:20离线后本地已经到:23
以上,双写同步,且要保证数据一致,几乎难以达到。最终,可能导致数据的错乱问题!
(图3)
0 条评论
回复 删除
下一页