客户端-服务器模型中的高性能运行时解析和编辑的制作方法

文档序号:34993163发布日期:2023-08-03 22:04阅读:来源:国知局

技术特征:
1.一种计算机实现的方法,包括:从客户端接收第一请求,所述第一请求针对基于句法而被解析的文档;基于所述句法来解析所述文档的初始数目的行;向所述客户端返回已解析的所述初始数目的行,从而允许所述客户端在显示器的可视窗口中显示已解析的所述初始数目的行;在成功解析所述文档的其余行之后,存储所述文档的已完全解析的版本;响应于所述可视窗口中的滚动动作,提供未解析文档的与所述第一请求相关联的相关部分;响应于检测到所述滚动动作的终止,接收第二请求,所述第二请求针对与第一行集合对应的已解析行;以及返回来自所述已完全解析的版本的所述对应的已解析行,或者解析所述文档的与所述第一行集合对应的节以返回所述对应的已解析行,从而允许所述客户端在所述可视窗口中显示所述对应的已解析行。2.根据权利要求1所述的方法,还包括:返回已解析的所述初始数目的行,同时并发地在一个或多个阶段解析所述文档的所述其余行;以及在成功解析针对相应阶段的行之后,执行以下至少一项:存储已成功解析的针对所述相应阶段的所述行;以及返回已成功解析的针对所述相应阶段的所述行,从而允许所述客户端执行以下至少一项:接收已成功解析的针对所述相应阶段的所述行;以及存储已成功解析的针对所述相应阶段的所述行。3.根据权利要求1所述的方法,还包括:响应于确定所述已完全解析的版本被存储或可用,返回来自所述已完全解析的版本所述对应的已解析行;以及响应于确定所述已完全解析的版本未被存储或不可用,解析所述文档的与所述第一行集合对应的所述节,并且返回已解析的所述节作为所述对应的已解析行。4.根据权利要求1所述的方法,其中向所述客户端返回已解析的所述初始数目的行还允许所述客户端:响应于接收到已解析的所述初始数目的行,存储已解析的所述初始数目的行,其中所述初始数目的行与所述显示器的所述可视窗口相关联,其中向所述客户端返回所述对应的已解析行还允许所述客户端:响应于接收到所述对应的已解析行,存储所述对应的已解析行,以及其中所述方法还包括向所述客户端返回所述文档的所述已完全解析的版本,从而允许所述客户端:响应于接收到所述文档的所述已完全解析的版本,存储所述文档的所述已完全解析的版本。5.根据权利要求1所述的方法,还包括:响应于确定所述滚动动作在预定时间窗口期间发生,接收第三请求,所述第三请求针对与估计可视窗口对应的已解析行,其中所述估计可视窗口基于以下至少一项:
滚动速度,所述滚动速度基于在所述预定时间窗口期间所述滚动动作的量;以及对所述文档被滚动通过的百分比的估计,所述估计基于在所述预定时间窗口期间所述滚动动作的所述量。6.根据权利要求1所述的方法,还包括:确定与第二行集合中的行相关联的第一编辑;基于所述第一编辑来接收第四请求,所述第四请求针对与所述第二行集合对应的已更新的已解析行;基于所述第一编辑来解析所述文档;以及返回已更新的已解析文档、或者与所述第二行集合对应的所述已更新的已解析行,从而允许所述客户端响应于接收到所述已更新的已解析文档和所述已更新的已解析行而执行以下至少一项:存储所述已更新的已解析文档和所述已更新的已解析行;以及在所述可视窗口中显示所述已更新的已解析行。7.根据权利要求1所述的方法,还包括:确定与所述已解析文档的多个行相关联的多个编辑,其中所述多个编辑被存储在所述客户端的队列中,直到条件被检测到为止,从而允许所述客户端响应于所述条件被检测到而确定传输所述编辑的次序。8.根据权利要求7所述的方法,其中检测到所述条件包括以下至少一项:确定经由所述客户端上的图形用户界面的大于预定时间段的用户活动延迟;检测到所述用户已经经由所述图形用户界面生成了特定同步命令;检测到除了与所述多个行相关联的所述多个编辑外,所述用户正在编辑所述文档的大于预定数目的行的节;以及确定所述队列的长度大于预定大小。9.根据权利要求7所述的方法,其中所述条件基于以下至少一项:自经由所述图形用户界面发起最新用户动作以来的时间段;经由所述图形用户界面在所述文档的区域中被发起的用户动作,所述区域不同于与包括所述多个行的可视窗口相关联的区域;所述文档的大小;以及所述多个编辑的数目。10.根据权利要求7所述的方法,其中所述编辑包括以下至少一项:添加操作、修改操作和删除操作,以及其中确定传输所述编辑的所述次序基于以下至少一项:所述用户录入所述多个编辑的次序;所述多个编辑的基于所述编辑在所述文档中发生的次序的次序;作为单个批量编辑操作被提交的多个编辑;作为单个批量粘贴操作的所有添加动作;以及作为单个批量删除操作的所有删除操作。11.根据权利要求1所述的方法,还包括:确定与第三行集合中的行相关联的第二编辑;
基于所述第二编辑来接收第五请求,所述第五请求针对与所述第三行集合对应的已更新的已解析行;计算所述文档的第一状态与所述文档的第二状态之间的差异,其中所述第一状态与所述文档在所述一个或多个编辑之前的状态对应,并且所述第二状态与所述文档在所述一个或多个编辑之后的状态对应;存储所计算的所述差异;以及向所述客户端返回所计算的所述差异,从而允许所述客户端响应于接收到所计算的所述差异:基于所述第三行集合和所计算的所述差异来确定已更新的已解析行;存储所计算的所述差异和所述已更新的已解析行中的至少一项;以及显示所述已更新的已解析行。12.根据权利要求11所述的方法,还包括:使用所计算的所述差异来执行后续撤销操作。13.根据权利要求1所述的方法,还包括:确定经由所述客户端上的图形用户界面的、对引用链接的用户激活;基于对所述引用链接的所述用户激活而接收第六请求,所述第六请求针对被映射到所述引用链接的已解析行;响应于确定所述已完全解析的版本未被存储或不可用:通过省略缩进大于预定数目的空格的行来执行所述文档的过滤解析;基于所述过滤解析来创建将引用链接映射到已解析行的查找表;以及返回被映射到所述引用链接的所述已解析行;以及响应于确定所述已完全解析的版本被存储或可用:搜索先前基于所述已完全解析的版本而被创建的查找表;以及返回被映射到所述引用链接的所述已解析行;以及从而允许所述客户端响应于接收到被映射到所述引用链接的所述已解析行,在所述可视窗口中显示被映射到所述引用链接的所述已解析行。14.根据权利要求1所述的方法,其中所述第一请求经由以下至少一项而被接收:所述客户端上的编辑器;以及经由应用编程接口的自动化程序,其中所述文档是针对至少一个网络设备的网络配置文件,其中所述未解析文档的所述相关部分被提供用于以下至少一项:在所述可视窗口中显示;以及由所述自动化程序使用,以及其中所述第一行集合基于以下至少一项:所述可视窗口中的行;以及由所述自动化程序确定的行。15.一种计算机系统,包括:处理器;以及
存储器,被耦合到所述处理器并且存储指令,所述指令在由所述处理器执行时使所述处理器执行方法,所述方法包括:从客户端接收第一请求,所述第一请求针对基于句法而被解析的文档;基于所述句法来解析所述文档的初始数目的行;向所述客户端返回已解析的所述初始数目的行,从而允许所述客户端在显示器的可视窗口中显示已解析的所述初始数目的行;在成功解析所述文档的其余行之后,存储所述文档的已完全解析的版本;响应于所述可视窗口中的滚动动作,提供未解析文档的与所述第一请求相关联的相关部分;响应于检测到所述滚动动作的终止,接收第二请求,所述第二请求针对与第一行集合对应的已解析行;以及返回来自所述已完全解析的版本的所述对应的已解析行,或者解析所述文档的与所述第一行集合对应的节以返回所述对应的已解析行,从而允许所述客户端在所述可视窗口中显示所述对应的已解析行。16.根据权利要求15所述的计算机系统,其中所述方法还包括:返回已解析的所述初始数目的行,同时并发地在一个或多个阶段解析所述文档的所述其余行;在成功解析针对相应阶段的行之后,执行以下至少一项:存储已成功解析的针对所述相应阶段的所述行;以及返回已成功解析的针对所述相应阶段的所述行;以及响应于确定所述已完全解析的版本未被存储或不可用,解析所述文档的与所述第一行集合对应的所述节,并且返回已解析的所述节作为所述对应的已解析行。17.根据权利要求15所述的计算机系统,其中所述方法还包括:响应于确定所述滚动动作在预定时间窗口期间发生,接收第三请求,所述第三请求针对与估计可视窗口对应的已解析行,其中所述估计可视窗口基于以下至少一项:滚动速度,所述滚动速度基于在所述预定时间窗口期间所述滚动动作的量;以及对所述文档被滚动通过的百分比的估计,所述估计基于在所述预定时间窗口期间所述滚动动作的所述量。18.根据权利要求15所述的计算机系统,其中所述方法还包括:确定与第二行集合中的行相关联的第一编辑;基于所述第一编辑来接收第四请求,所述第四请求针对与所述第二行集合对应的已更新的已解析行;基于所述第一编辑来解析所述文档;以及返回已更新的已解析文档、或者与所述第二行集合对应的所述已更新的已解析行,从而允许所述客户端响应于接收到所述已更新的已解析文档和所述已更新的已解析行而执行以下至少一项:存储所述已更新的已解析文档和所述已更新的已解析行;以及在所述可视窗口中显示所述已更新的已解析行。19.根据权利要求15所述的计算机系统,其中所述方法还包括:
确定与第三行集合中的行相关联的第二编辑;基于所述第二编辑来接收第五请求,所述第五请求针对与所述第三行集合对应的已更新的已解析行;计算所述文档的第一状态与所述文档的第二状态之间的差异,其中所述第一状态与所述文档在所述一个或多个编辑之前的状态对应,并且所述第二状态与所述文档在所述一个或多个编辑之后的状态对应;存储所计算的所述差异;以及向所述客户端返回所计算的所述差异,从而允许所述客户端响应于接收到所计算的所述差异:基于所述第三行集合所计算的所述差异来确定已更新的已解析行;存储所计算的所述差异和所述已更新的已解析行中的至少一项;以及显示所述已更新的已解析行。20.一种存储指令的非瞬态计算机可读存储介质,所述指令在由计算机执行时使所述计算机执行方法,所述方法包括:经由客户端上的编辑器接收第一请求,所述第一请求针对基于句法而被解析的文档;基于所述句法来解析所述文档的初始数目的行;向所述客户端返回已解析的所述初始数目的行,同时并发地解析所述文档中的其余行,从而允许所述客户端在显示器的可视窗口中显示已解析的所述初始数目的行;在成功解析所述其余行之后,存储所述文档的已完全解析的版本;响应于所述可视窗口中的滚动动作,提供未解析文档的与所述第一请求相关联的相关部分;响应于检测到所述滚动动作的终止,接收第二请求,所述第二请求针对与第一行集合对应的已解析行;以及返回来自所述已完全解析的版本的所述对应的已解析行,或者解析所述文档的与所述第一行集合对应的节以返回所述对应的已解析行,从而允许所述客户端在所述可视窗口中显示对应的所述已解析行。

技术总结
本发明的实施例涉及客户端-服务器模型中的高性能运行时解析和编辑。系统从客户端接收第一请求,该第一请求针对基于句法而被解析的文档。系统解析并且返回文档的初始数目的行,从而允许客户端在可视窗口中显示已解析的初始数目的行。在成功解析其余行之后,系统存储已完全解析的版本。响应于可视窗口中的滚动动作,系统提供未解析文档的与第一请求相关联的相关部分。响应于检测到滚动动作的终止,系统接收第二请求,该第二请求针对与第一行集合对应的已解析行。系统返回对应的已解析行,从而允许客户端在可视窗口中显示对应的已解析行。允许客户端在可视窗口中显示对应的已解析行。允许客户端在可视窗口中显示对应的已解析行。


技术研发人员:S
受保护的技术使用者:慧与发展有限责任合伙企业
技术研发日:2022.04.24
技术公布日:2023/8/2
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1