画布,遇见代码:构建 Figma 的代码层
快速阅读: 据《菲玛》称,一篇论文介绍了一种名为Eg-walker的新算法,结合了OT和CRDT的优点。它通过有向无环图表示编辑操作,类似Git变基,能高效合并并发事件,内存开销小,速度快。
幸运的是,去年发表的一篇论文介绍了一种名为事件图遍历算法(Eg-walker)的新算法。该算法拥有大多数操作转换(OT)和冲突自由复制数据类型(CRDT)的优点。Eg-walker 将编辑操作表示为一个有向无环因果事件图,其算法类似于 Git 的变基操作;它能够将多个分叉的分支重新排列成线性顺序。为了合并并发事件,Eg-walker 会临时构建一个 CRDT 结构。在其解决算法完成后,Eg-walker 会删除内部的 CRDT 结构,从而释放内存。在顺序且不发生冲突的编辑情况下,更新几乎不消耗资源。因此,它的合并速度与 CRDT 相当,但如同 OT 一样具有最小的内存开销。
(以上内容均由Ai生成)