Skip to content

04 · 实时协作

字数: 0 字 时长: 0 分钟

一句话

多人同时编辑同一文档(类似飞书/Notion)要 实时同步 → 常用 WebSocket 推变更 + OT/CRDT 解决冲突。

和你日常工作的关系

两年经验可能只写过普通 REST。协作类要理解:并发编辑时不能简单「后保存覆盖前保存」。

核心概念

概念说明
WebSocket全双工,服务端主动推
OT(操作变换)把「插入/删除」操作在并发下变换到一致顺序
CRDT无中心合并的数据结构,最终一致
版本/向量时钟判断谁先谁后

前端职责(通常)

  • 建立 WS 连接、心跳、重连
  • 本地编辑 → 发 operation → 收他人 operation → 应用到编辑器
  • 光标/选区同步(可选)
  • 离线队列、冲突提示

演示

无简化 HTML(依赖编辑器 + 服务端)。建议读课程 04-技术讲解.md 画流程图理解。

面试怎么说

  • 问题:多人同时改同一段文字丢数据。
  • 方案:WS 实时 + OT/CRDT(说清你项目用的哪一种)。
  • 难点:断线重连、版本对齐、大文档性能。

课程资料

04. 实时协作/课件资料/04-技术讲解.md

/