首页   

前端多人在线协同编辑场景实现策略探索

寻梦环游  ·  · 4 年前
阅读 38

前端多人在线协同编辑场景实现策略探索

背景

  • 事故复盘系统存在多人编辑的情况,初始的方案是有编辑锁,只有一个用户可以编辑,通过转移负责人来做编辑人转移,这样就不会出现冲突的情况
  • 预算系统存在多人填报预算的情况

存在的问题

  • 事故复盘系统有的时候需要快速的填写复盘文档,查找问题根因,只有一个人可以编辑,这个很影响填报效率,需要支持多人同时在线编辑。
  • 预算系统内容较多,如果开发填报会有多人同时在线编辑,存在彼此覆盖的情况。

采取的行动

  • 事故复盘系统采用的是把大模块细分成一个个的小模块,减少用户编辑大模块导致的冲突可能,然后为用户的每个小模块的编辑记录一个hash,存储到库里,有其他用户保存的时候发现其他用户的hash值已经和库里存的数据不一致时,会提醒用户已有其他编辑过,并把其他人编辑的内容返回过来,让用户解决冲突后再次提交,并且为用户提供模块的操作日志,使用户的编辑内容的操作有迹可循。
  • 预算系统通过细分模块,然后最后由后台汇总的方式来减少冲突,并且为用户实时提交编辑的数据,并以用户的最后一次提交存入到数据库,这样来解决冲突问题。

得到的结果

  • 两个系统都支持了多人同时编辑,采用的策略稍有不同,事故复盘主要是通过hash值判断冲突,同时把冲突内容返回给用户,让用户解决冲突后再提交;预算系统主要是通过原子化模块,细分模块编辑权限,并且实时提交和获取最新数据,来支持多人的协作。

未来计划

  • 探索多人编辑冲突的展示和自动merge功能,自动为用户合并信息。

抛砖引玉

  • 欢迎大家留言对于多人协同编辑的前后端技术探索
推荐文章
早教微观  ·  马雷军:民办学前教育发展的定位与展望  ·  5 年前  
© 2022 51好读
删除内容请联系邮箱 2879853325@qq.com