多端同步 · 五道保险
家里的桌面在改第 41 章,路上的手机也在改第 41 章——断网、并发、晚到,两台设备只能有一个真相。跟着这份手稿走 24 小时,看五台状态机怎么裁决。
第 41 章改了三百字——本地缓存先落袋,字先保住,再谈上云。
便签贴上第 41 章:「改过,未上云」——编辑即标脏,与时间戳无关。
顺手删掉废稿第 7 章——先立碑再移除:「删过,未确认」,删除意图先落账。
上云重试三次无果——改稿、删稿两封信投进信筒,不再干等。
先记账,再寄信。断网时段写作不等人——网络的事,交给后台的装置。
统一方法论 · 多端五问
本地只管写,回执说了算
五台装置合起来,是任何「多端同写一份文档」的系统都要回答的五个问题—— 每个问题对应一台装置、一条不变式、一起真实事故。五问答完,断网与并发就不再是事故,而是流程。
我听到云端说到哪儿了?
游标只做加速,不做裁决——判脏可以快,下结论必须凭回执。
挡下的事故:跨端时钟偏快,把水尺推进未来:时间戳判脏漏传一章。这正是便签存在的理由。
云端此刻真正有什么?
对账只信权威名册——缺席是线索,不是判决。
挡下的事故:客户端拿上一轮 id 集做算术推断删除,一次服务端波动让整批章节消失。此后名册由服务端签发。
我哪些字还没送达?
未确认 > 已确认——没收到回执的稿子说了算。
挡下的事故:只凭水尺判脏的系统里,时钟偏快的一端永远「看起来已同步」,改动的字悄悄滞留本机。
我删了什么、别处还不知道?
意图先于落账——先立碑再动数据,见碑不采纳、不回填。
挡下的事故:断网删除后一次全量拉取,把已删章节当「新章」复活:删除被静默回滚。
晚到的信怎么送达?
先试直送、失败入队、回放必回读——送达以读回为准。
挡下的事故:队列里的失败章被水尺越过,标题栏谎报「已全部同步」。指示器自此把队列并入统计。
- 双态持久——内存求快、持久求存,双写同进退
- 只前移不倒移——游标取 max;丢了就退回全量,不硬猜
- 意图先于落账——先立碑、先贴条,再动数据
- 缺席不作数——名册短了谁,先查证再动手
- 回执才出清——ack 没到,便签不揭、墓碑不平
- 送达以读回为准——写入成功 ≠ 内容落地
客户端能力 · 离线同步引擎
桌面、Web、移动,三端共用这五道保险
客户端为每个项目维护水尺、名册、便签、墓碑与信筒:断网照常写作,回网自动对账与回放, 服务端护栏与回读校验兜底。上面这场 24 小时,在你每次合上电脑、掏出手机的间隙里真实发生。
演示情节为官方虚构示例项目《雾城列车》,展示同步机制本身,不含任何用户作品内容。同系列教案: 救猫咪十五节拍图谱 、 体裁改编前后对照 、 伏笔埋收时间线 、 RAG 记忆检索 、 知识图谱 、 提示词自迭代 。