分布式数据处理方法、装置、系统、设备和介质制造方法及图纸

技术编号:33352486 阅读:36 留言:0更新日期:2022-05-08 10:01
一种分布式数据处理方法、装置、系统、设备和介质。该方法包括:响应于从多个客户端中的第一客户端接收到对于第一对象的修改指令和第一对象在第一客户端中对应的第一版本号,将在日志服务器中存储的针对第一对象的第二版本号与第一版本号进行比较;以及响应于确定第一版本号不低于第二版本号,为修改指令分配第三版本号,其中,第三版本号高于第一版本号;将修改指令和第三版本号发送到多个客户端中除第一客户端之外的其他客户端;向第一客户端发送第三版本号,以用于基于第三版本号更新第一对象在第一客户端中对应的第一版本号;以及响应于确定修改指令不包括针对第一对象的增加或删除操作,保留在日志服务器中存储的所述第一对象的第二版本号。一对象的第二版本号。一对象的第二版本号。

【技术实现步骤摘要】
分布式数据处理方法、装置、系统、设备和介质


[0001]本公开涉及计算机领域,特别是涉及一种分布式数据处理方法、装置、系统、电子设备、非瞬时计算机可读存储介质和计算机程序产品。

技术介绍

[0002]三维编辑器是设计、制作三维数字资产的工具,用于提高三维数字资产的制作效率,其中整合了各种资产资源以生成支持各种对象的组合、旋转、移动和缩放等功能的三维数字资产。三维编辑器相较于一般的二维设计工具有着较复杂的交互操作,在对三维场景进行编辑时,使用传统的流程可能分为很多阶段,不同阶段之间需要不同的处理软件,由此构成了一条很长的工具链,过程较为繁琐。在这种需求下,多人协同的形式由此产生,多名用户同时在线对同一对象进行编辑可以打破上下游的依赖,并缩短三维数字资产的制作周期,简化整套制作流程。因此,如何实现多人协同中多端操作的同步机制以及如何解决多人操作可能引起的冲突,显得尤为重要。
[0003]在此部分中描述的方法不一定是之前已经设想到或采用的方法。除非另有指明,否则不应假定此部分中描述的任何方法仅因其包括在此部分中就被认为是现有技术。类似地,除非本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种分布式数据处理方法,所述方法在服务器侧执行,所述方法包括:响应于从多个客户端中的第一客户端接收到对于第一对象的修改指令和所述第一对象在所述第一客户端中对应的第一版本号,将在日志服务器中存储的针对所述第一对象的第二版本号与所述第一版本号进行比较;以及响应于确定所述第一版本号不低于所述第二版本号,为所述修改指令分配第三版本号,其中,所述第三版本号高于所述第一版本号;将所述修改指令和所述第三版本号发送到所述多个客户端中除所述第一客户端之外的其他客户端;向所述第一客户端发送所述第三版本号,以用于基于所述第三版本号更新所述第一对象在所述第一客户端中对应的第一版本号;以及响应于确定所述修改指令不包括针对所述第一对象的增加或删除操作,保留在所述日志服务器中存储的针对所述第一对象的所述第二版本号。2.如权利要求1所述的方法,还包括:响应于所述第一版本号不低于所述第二版本号,在所述日志服务器中存储所述修改指令和所述第三版本号。3.如权利要求1或2所述的方法,还包括:将所述第三版本号与所述第一对象在存储服务器中对应的第四版本号进行比较;以及响应于所述第三版本号高于所述第四版本号,在所述存储服务器中存储所述修改指令,并基于所述第三版本号对所述第四版本号进行更新。4.如权利要求3所述的方法,还包括:响应于从所述第一客户端中接收到包括所述第一对象对应的编号的请求,基于所述编号,确定所述第一对象;以及将所述日志服务器中针对所述第一对象的对应的版本号高于所述第四版本号的修改指令和/或所述存储服务器中对应于所述第四版本号的所述第一对象发送到所述第一客户端。5.如权利要求3或4所述的方法,其中,所述日志服务器、所述存储服务器与所述多个客户端之间通过流式的远程过程调用进行数据的传输。6.如权利要求3

5中任一项所述的方法,还包括:在所述存储服务器中,以预设时间间隔基于所述存储服务器中所存储的修改指令以及对应于所述第四版本号的所述第一对象,创建所述第一对象对应的快照。7.如权利要求1

6中任一项所述的方法,还包括:响应于确定所述修改指令包括针对所述第一对象的增加或删除操作,基于所述第三版本号对所述第二版本号进行更新。8.一种分布式数据处理方法,所述方法在客户端执行,所述方法包括:响应于生成针对第一对象的修改指令,将所述修改指令和所述第一对象在所述客户端中对应的第一版本号发送到日志服务器;以及响应于从所述日志服务器接收到针对所述第一对象的第二版本号,基于所述第二版本号对所述第一版本号进行更新,其中所述第二版本号高于所述第一版本号。9.如权利要求8所述的方法,还包括:
响应于生成针对所述第一对象的所述修改指令,生成所述修改指令的逆指令,并将所述逆指令存储在所述客户端的撤销栈中,其中,所述逆指令对应于与所述修改指令对应的操作的逆操作;响应于对所述修改指令的撤销操作,确定是否从所述日志服务器接收到所述第二版本号;以及响应于从所述日志服务器接收到所述第二版本号,执行所述逆指令并将所述逆指令发送到所述日志服务器。10.如权利要求9所述的方法,还包括:响应于所述撤销操作,生成所述逆指令的逆指令,并将所生成的所述逆指令的逆指令存储在所述客户端的重做栈中,以用于恢复所述撤销操作。11.如权利要求8

10中任一项所述的方法,还包括:向存储服务器发送用于获取所述第一对象的请求,所述请求包括所述第一对象对应的编号;从所述存储服务器接收所述第一对象在所述存储服务器中对应的第三版本号;向所述日志服务器发送所述第三版本号;从所述存储服务器接收对应于所述第三版本号的所述第一对象和/或从所述日志服务器接收针对所述第一对象的对应的版本号高于所述第三版本号的修改指令;以及基于所接收到的对应于第三版本号的所述第一对象和/或针对所述第一对象的对应的版本号高于所述第三版本号的修改指令进行渲染,以显示当前最新版本的所述第一对象。12.如权利要求8

11中任一项所述的方法,还包括:响应于生成所述修改指令,基于所述修改指令进行渲染操作,以生成用于显示的第一视频流。13.如权利要求8

12中任一项所述的方法,还包括:响应于从所述日志服务器接收到针对所述第一对象的修改操作的指令,基于所述指令进行渲染操作,以生成用于显示的第二视频流。14.一种分布式数据处理装置,所述装置包括日志服务器,所述日志服务器被配置为执行以下操作:响应于从多个客户端中的第一客户端接收到对于第一对象的修改指令和所述第一对象在所述第一客户端中对应的第一版本号,将所存储的针对所述第一对象的第二版本号与所述第一版本号进行比较;以及响应于确定所述第一版本号不低于所述第二版本号,为所述修改指令分配第三版本号,其中,所述第三版本号高于所述第一版本号;将所述修改指令和所述第三版本号发送到所述多个客户端中除所述第一客户端之外的其他客户端;向所述第一客户端发送所述第三版本号,以用于基于所述第三版本号更新所述第一对象在所述第一客户端中对应的第一版本号;以及响应于确定所述修改指令不包括针对所述第一对象的增加或删除操作,保留所存储的针对所述第一对象的所述第二版本号。15.如权利要求14所述的装置,其中,所述日志服务器还被配置为:
响应于所述第一版本号不低于所述第二版本号,存储所述修改指令和所述第三版本号。16.如权利要求14或15所述的装置,还包括存储服务器,其中,所述存储服务器中存储有对应于第四版本号的所述第一对象,并且其中,所述存储服务器被配置为执行以下操作:将所述第三版本号与所述第四版本号进行比较;以及响应于所述第三版本号高于所述第四版本号,存储所述修改指令,并基于所述第三版本号对所述第四版本号进行更新。17.如权利要求16所述的装置,其中,所述存储...

【专利技术属性】
技术研发人员:匡冶李者璈王承宸李红亮马逸东胡渊鸣
申请(专利权)人:北京太琦图形科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1