多文档同步算法
一般文档同步算法有三种常见做法:
- ownership
- event passing
- three-way merges
其中,ownership 算法其实就是加锁,一份文档只能同时一个用户编辑,第一个用户拥有写权限,剩下用户只有读权限。稍微好一点的做法,是只对某个子章节进行加锁。
Event Passing 是将用户对文档所做的任何操作都通过网络发送给其余用户,并在本地进行回放。
Three-Way Merge 是在服务器端将多个用户、以及服务器维系的当前 V1 版本进行归并,计算出 V2 版本,然后将 V2 版本发送回 Client 的算法。