页面信息同步显示的方法、装置、计算机设备和存储介质
技术领域
本申请涉及数据同步技术领域,尤其涉及一种页面信息同步显示的方法、装置、计算机设备和存储介质。
背景技术
随着通讯技术的发展,数据传输交换的规模越来越大,数量呈线性增长,如何高效地传输大量的运行状态数据和快速地进行呈现页面的刷新就显得十分重要。
业界在数据传输和页面刷新上通常采用的方法是:把查询到的所有状态数据进行全部传输,例如,服务器和客户端同步显示时,服务器检测到用户基于客户端的刷新请求时,服务器将数据进行全部的重新发送。这样的数据传输效率降低,浪费网络资源,服务器和客户端之间的带宽又非常有限的情况下,大数据量的数据传输和页面刷新会导致服务器和客户端之间的数据传输效率低,造成客户端卡死甚至数据传输失败等不同的情况。
虽然,目前已经有将页面信息进行拆解后进行传输的技术方案,但是在首次传输时仍然需要将页面完整数据进行传输,这就造成了带宽的极大的浪费,同时易造成首次传输时发生卡死的状况。
发明内容
基于此,有必要针对页面首次传输时需要完整传递造成传输效率低,造成客户端卡死甚至数据传输失败等的问题,提供一种页面信息同步显示的方法、装置、计算机设备和存储介质。
一种页面信息同步显示的方法,包括如下步骤:
接收预进行数据同步的终端发出的同步请求指令,根据所述同步请求指令查询数据库,得到与所述同步显示指令相符的初始页面的页面代码,根据所述页面代码生成待更新初始页面;
获取所述预进行数据同步的终端发出的页面更新请求指令,根据所述页面更新请求指令确定所述待更新初始页面所对应的初始字符串,获取页面存储端的实时页面对应的实时字符串,将所述初始字符串和所述实时字符串进行比对后,得到待传输的页面数据;
发送所述待传输的页面数据至所述预进行数据同步的终端,根据所述待传输的页面数据对所述初始页面进行渲染后得到所述实时页面。
在其中一个可能的实施例中,所述接收预进行数据同步的终端发出的同步请求指令,根据所述同步请求指令查询数据库,得到与所述同步显示指令相符的初始页面的页面代码,根据所述页面代码生成待更新初始页面,包括:
接收预进行数据同步的终端发出的同步请求指令,获取所述终端的IP地址,根据所述IP地址,获取距离所述IP地址最近的预同步数据存储端;
获取所述初始页面在所述预同步数据存储端中的存储编码,根据所述存储编码查询所述数据库,得到与所述存储编码对应的初始页面代码,根据所述初始页面代码生成原始待更新初始页面;
发送所述原始待更新初始页面至所述预进行数据同步的终端,接收所述预进行数据同步的终端对所述原始待更新初始页面完整性的反馈信息,根据所述反馈信息对所述原始待更新初始页面进行修正后得到所述与所述同步显示指令相符的待更新初始页面。
在其中一个可能的实施例中,所述获取所述预进行数据同步的终端发出的页面更新请求指令,根据所述页面更新请求指令确定所述待更新初始页面所对应的初始字符串,获取页面存储端的实时页面对应的实时字符串,将所述初始字符串和所述实时字符串进行比对后,得到待传输的页面数据,包括:
获取预进行数据同步的终端发出的页面更新请求指令,根据所述页面更新请求指令确定初始页面参数;
将所述初始页面参数进行归类后形成数个初始字符组,将所述数个初始字符组按照首字母排序后形成所述初始字符串;
发送实时页面获取指令至所述页面存储端,获取所述页面存储端的实时页面对应的实时字符串;
将所述初始字符串和所述实时字符串进行比较,得到所述初始页面与所述实时页面的差异字符信息;
将差异字符的数量与所述初始字符串的数量进行比值运算,得到差异百分比;
将所述差异百分比与预设阈值进行比较,若所述差异百分比不超过所述预设阈值,则将所述差异字符信息作为所述待传输的页面数据,否则重新获取初始页面的页面参数。
在其中一个可能的实施例中,所述发送所述待传输的页面数据至所述预进行数据同步的终端,根据所述待传输的页面数据对所述初始页面进行渲染后得到所述实时页面,包括:
根据所述差异字符信息将所述待传输的页面数据分割成数个差异子块,将所述数个差异子块依次发送至所述预进行数据同步的终端;
获取所述预进行数据同步的终端对所述数个差异子块的反馈信息,根据所述反馈信息对所述初始页面进行渲染,得到所述实时页面。
在其中一个可能的实施例中,所述获取所述初始页面在所述预同步数据存储端中的存储编码,根据所述存储编码查询所述云端数据库,得到与所述存储编码对应的云端初始页面代码,根据所述初始页面代码生成原始待更新的初始页面,包括:
获取所述初始页面的特征元素,将所述特征元素进行二值化转换后得到页面存储编码;
查询所述数据库在数据存储时使用的数据存储编码,将所述页面存储编码与所述数据存储编码进行比对后得到所述初始页面在所述数据库中的存储位置;
获取存储在所述数据库存储位置中的所有页面信息,获取所述初始页面的存储时间,根据所述初始页面的存储时间得到初始页面代码。
在其中一个可能的实施例中,所述将所述初始字符串和所述实时字符串进行比较,得到所述初始页面与所述实时页面的差异字符信息,包括:
获取初始字符串与实时字符串,根据预设的动态算法对所述初始字符串和所述实时字符串进行分块;
将分块完成的初始字符串和实时字符串进行比对,得到差异字符和差异字符位置,并将差异字符和差异字符位置作为所述差异字符信息。
在其中一个可能的实施例中,所述获取所述预进行数据同步的终端对所述数个差异子块的反馈信息,根据所述反馈信息对所述初始页面进行渲染,得到所述实时页面,包括:
获取所述预进行数据同步的终端对所述差异子块的反馈信息,若所述反馈信息中包含所述差异子块的数据,则删除所述差异子块;
若所述反馈信息中不包含所述差异子块的数据,则将所述差异子块的信息转换成新页面参数,根据所述新页面参数对所述初始页面参数进行更新渲染后得到所述实时页面。
一种页面信息同步显示的装置,包括如下模块:
初始页面获取模块,设置为接收预进行数据同步的终端发出的同步请求指令,根据所述同步请求指令查询数据库,得到与所述同步显示指令相符的初始页面的页面代码,根据所述页面代码生成待更新初始页面;
页面数据建立模块,设置为获取所述预进行数据同步的终端发出的页面更新请求指令,根据所述页面更新请求指令确定所述待更新初始页面所对应的初始字符串,获取页面存储端的实时页面对应的实时字符串,将所述初始字符串和所述实时字符串进行比对后,得到待传输的页面数据;
实时页面渲染模块,设置为发送所述待传输的页面数据至所述预进行数据同步的终端,根据所述待传输的页面数据对所述初始页面进行渲染后得到所述实时页面。
一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行上述基页面信息同步显示的方法的步骤。
一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述页面信息同步显示的的步骤。
与现有机制相比,本申请具有以下优点:
(1)通过从数据库获取初始页面节约了首次进行页面传输的时间,并且在数据传输的过程中进行及时双向反馈,从而避免了数据是重复传输造成的网络资源浪费;
(2)通过从数据库中获得初始页面,从而节约了从页面的原来存储终端发送页面造成的传输数据量大的问题;
(3)通过对页面元素进行有效分析,从而准确获得了需要进行传输的数据;
(4)通过差异子块,能够精准的获得页面数据传输的实时信息,便于对页面数据传输过程进行监控。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。
图1为本申请在一个实施例中的一种页面信息同步显示的方法的整体流程图;
图2为本申请在一个实施例中的一种页面信息同步显示的方法中的初始页面获取过程示意图;
图3为本申请在一个实施例中的一种页面信息同步显示的方法中的页面数据建立过程示意图;
图4为本申请在一个实施例中的一种页面信息同步显示的方法中的实时页面渲染过程示意图;
图5为本申请在一个实施例中的一种页面信息同步显示的方法装置的结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。
图1为本申请在一个实施例中的一种页面信息同步显示的方法的整体流程图,如图1所示,一种页面信息同步显示的方法,包括以下步骤:
S1、接收预进行数据同步的终端发出的同步请求指令,根据所述同步请求指令查询数据库,得到与所述同步显示指令相符的初始页面的页面代码,根据所述页面代码生成待更新初始页面;
具体的,在接收预进行数据同步的终端发出的同步请求指令后,需要对预进行数据同步的终端进行身份验证,只有通过身份验证的终端才能进行数据同步,在本步骤中,可以从同步请求指令中抽取出特征词,特征词主要是指需要进行同步的页面信息相关的字符信息。比如,预进行数据同步的终端需要同步的页面是“篮球版块”则根据“篮球版块”这一关键词从数据库中进行关键词查询后得到初始页面。
S2、获取所述预进行数据同步的终端发出的页面更新请求指令,根据所述页面更新请求指令确定所述待更新初始页面所对应的初始字符串,获取页面存储端的实时页面对应的实时字符串,将所述初始字符串和所述实时字符串进行比对后,得到待传输的页面数据;
具体的,在从数据库中获得初始页面后再进行页面同步时,可以根据字符串进行比对,将需要进行页面更新的请求指令进行参数转换从而得到初始页面的初始字符串。
S3、发送所述待传输的页面数据至所述预进行数据同步的终端,根据所述待传输的页面数据对所述初始页面进行渲染后得到所述实时页面。
具体的,在将待传输的数据传输至苏搜书预进行数据同步的终端时,可以先对两个终端之间的网络连接情况进行检测,确定带宽等影响数据传输的参数,然后根据带宽等确定数据传输的频率。在预进行数据同步的终端接收到待传输的页面数据后需要进行重复性检测,去除重复出现的数据,并且写成日志进行上报以便于下次传输时进行调整。
本实施例,通过从数据库获取初始页面节约了首次进行页面传输的时间,并且在数据传输的过程中进行及时双向反馈,从而避免了数据是重复传输造成的网络资源浪费。
图2为本申请在一个实施例中的一种页面信息同步显示的方法中的初始页面获取过程示意图,如图所示,所述S1、接收预进行数据同步的终端发出的同步请求指令,根据所述同步请求指令查询数据库,得到与所述同步显示指令相符的初始页面的页面代码,根据所述页面代码生成待更新初始页面,包括:
S11、接收预进行数据同步的终端发出的同步请求指令,获取所述终端的IP地址,根据所述IP地址,获取距离所述IP地址最近的预同步数据存储端;
其中,在接收到同步显示指令后对发出同步显示指令的同步请求端进行网络地址识别,识别方法可以是对终端的ID标识进行识别,对ID标识进行哈希值计算后得到IP地址。在网络中,存储网页的服务器有多个,比如A网页的原始终端在美国,但是在中国有一个交互站,则从中国的交互站获取网页速度会大大快于从美国的原始服务器获取网页,因而需要选取距离所述IP地址最近的预同步数据存储端。
S12、获取所述初始页面在所述预同步数据存储端中的存储编码,根据所述存储编码查询所述数据库,得到与所述存储编码对应的初始页面代码,根据所述初始页面代码生成原始待更新初始页面;
具体的,存储编码是在数据存储到数据库时所使用的编码字符,如ASCII有128字符、ANSI有256个字符等。通过存储编码可以确定数据在存储到数据库中的位置信息,从而确定初始页面包括的内容。
S13、发送所述原始待更新初始页面至所述预进行数据同步的终端,接收所述预进行数据同步的终端对所述原始待更新初始页面完整性的反馈信息,根据所述反馈信息对所述原始待更新初始页面进行修正后得到所述与所述同步显示指令相符的待更新初始页面。
具体的,发送所述原始待更新初始页面至所述预进行数据同步终端,接收所述预进行数据同步终端对所述原始待更新初始页面完整性的反馈信息,抽取所述反馈信息中的页面字符量数据;将所述反馈信息中的页面字符量数据与所述原始待更新初始页面中的页面字符量数据进行比对,若差值在预设的误差阈值以内,则不对所述云端初始页面进行修正,否则对所述云端初始页面进行修正得到所述与所述同步显示指令相符的待更新初始页面。
对于差值在预设的误差阈值范围以外的情况,则将差值所对应的这部分字符补充到原始待更新页面上,这样就可以得到与所述同步显示指令相符的待更新初始页面。
本实施例,通过从数据库中获得初始页面,从而节约了从页面的原来存储终端发送页面造成的传输数据量大的问题。
图3为本申请在一个实施例中的一种页面信息同步显示的方法中的页面数据建立过程示意图,如图所示,所述S2、获取所述预进行数据同步的终端发出的页面更新请求指令,根据所述页面更新请求指令确定所述待更新初始页面所对应的初始字符串,获取页面存储端的实时页面对应的实时字符串,将所述初始字符串和所述实时字符串进行比对后,得到待传输的页面数据,包括:
S21、获取预进行数据同步的终端发出的页面更新请求指令,根据所述页面更新请求指令确定初始页面参数;
具体的,获取所述页面更新请求指令的发出时间,根据所述发出时间,截取初始页面图像;其中,一般页面更新请求指令是定时发出的,比如设置有页面更新的更新阈值,当达到更新阈值时,页面才会发生更新,否则不会发生更新,这样就没有必要将页面进行同步了。获取所述初始页面图像中的特征元素,根据所述特征元素的类型和位置,得到所述初始页面的参数。其中,特征元素主要是指页面的搜索框、滚动条等元素。
S22、将所述初始页面参数进行归类后形成数个初始字符组,将所述数个初始字符组按照首字母排序后形成所述初始字符串;
其中,页面参数的归类规则是页面尺寸数据归为一类,页面上元素数据归为一类。
S23、发送实时页面获取指令至所述页面存储端,获取所述页面存储端的实时页面对应的实时字符串;
其中,在接到预进行数据同步终端发出的页面更新请求指令后,及时发送实时页面获取指令至页面存储终端。获取实时页面的页面参数,将所述页面参数进行二值化转换后得到实时字符串。
S24、将所述初始字符串和所述实时字符串进行比较,得到所述初始页面与所述实时页面的差异字符信息;
具体的,在进行字符串比较时可以将字符串中每一个字符进行笔画比较或者像素点比较,若笔画一致或者像素点一致,则认为两个字符为同一字符,不一致则为两个字符。
S25、将差异字符的数量与所述初始字符串的数量进行比值运算,得到差异百分比;
其中,差异百分比是指差异字符数占总的初始字符数的数量,比如差异字符数为30,初始字符数为100,用差异字符数除以初始字符数后得到的比值为0.3,那么差异百分比为30%。
S26、将所述差异百分比与预设阈值进行比较,若所述差异百分比不超过所述预设阈值,则将所述差异字符信息作为所述待传输的页面数据,否则重新获取初始页面的页面参数。
具体的,预设阈值可以根据历史数据统计后获得,一般预设阈值在30%以下。
本实施例,通过对页面元素进行有效分析,从而准确获得了需要进行传输的数据。
图4为本申请在一个实施例中的一种页面信息同步显示的方法中的实时页面渲染过程示意图,如图所示,所述S3、发送所述待传输的页面数据至所述预进行数据同步的终端,根据所述待传输的页面数据对所述初始页面进行渲染后得到所述实时页面,包括:
S31、根据所述差异字符信息将所述待传输的页面数据分割成数个差异子块,将所述数个差异子块依次发送至所述预进行数据同步的终端;
其中,根据差异字符对应的页面上不同元素或者参数,将差异字符信息进行拆解,以便在进行页面渲染时能够找到页面上哪个位置没有发生渲染。
S32、获取所述预进行数据同步的终端对所述数个差异子块的反馈信息,根据所述反馈信息对所述初始页面进行渲染,得到所述实时页面。
具体的,反馈信息中可能包含有两种情形,第一种反馈信息中有所述差异子块的信息,则说明差异子块已经进行了数据传输,另一种情况是,反馈信息中没有所述差异子块,此时需要对差异子块的参数对初始页面的相应位置进行渲染,并且可以将两端页面进行像素点比较已确定数据完全传输。
本实施例,通过差异子块,能够精准的获得页面数据传输的实时信息,便于对页面数据传输过程进行监控。
在一个实施例中,所述S12、获取所述初始页面在所述预同步数据存储端中的存储编码,根据所述存储编码查询所述云端数据库,得到与所述存储编码对应的云端初始页面代码,根据所述初始页面代码生成原始待更新的初始页面,包括:
获取所述初始页面的特征元素,将所述特征元素进行二值化转换后得到页面存储编码;
其中,特征元素是指页面上的搜索框,列表框和滚动条等;二值化处理是根据预先设定好的各个特征元素的编号以及位置坐标进行转换得到的。
查询所述数据库在数据存储时使用的数据存储编码,将所述页面存储编码与所述数据存储编码进行比对后得到所述初始页面在所述数据库中的存储位置;
获取存储在所述数据库存储位置中的所有页面信息,获取所述初始页面的存储时间,根据所述初始页面的存储时间得到初始页面代码。
其中,在同一个数据存储编码对应的存储位置,在不同的时间可以存储不同的存储页面,即可能后续的页面将之前的页面数据进行覆盖,因此需要确定存储时间以便于获得准确的页面信息。
本实施例,通过存储编码之间的对应关系,精准的从数据库中获得需要的初始页面。
在一个实施例中,所述S24、将所述初始字符串和所述实时字符串进行比较,得到所述初始页面与所述实时页面的差异字符信息,包括:
获取初始字符串与实时字符串,根据预设的动态算法对所述初始字符串和所述实时字符串进行分块;
具体的,预设动态算法是指动态规划思想设置的方法,其中,动态规划思想就是根据数据量的即时变化情况对数据差异量进行分析。例如,服务器将初始字符串与当前字符串两段文字之间,由文字A转变成文字B所需的最少编辑次数。依据动态规划思想,定义允许的编辑次数包括增、删、改,即在特定文字增加文字,删除特定位置的文字,替换特定位置的文字所设置的算法。在根据预设的动态算法进行分块时,可以根据“增”、“删”、“改”的位置将初始字符串和实时字符串进行分块。
将分块完成的初始字符串和实时字符串进行比对,得到差异字符和差异字符位置,并将差异字符和差异字符位置作为所述差异字符信息。
其中,所述差异字符信息包括差异字符和差异字符位置这两个方面信息。在进行差异字符比较时,可以对分块后得到的初始字符串子块中的字符和分块后得到的实时字符串字符子块进行字符识别,字符识别的方式可以采用OCR等识别方法,然后在根据识别结果得到分块后得到的初始字符串子块和实时字符串字符子块的差异字符。
本实施例,利用预设动态算法对字符串进行分块比较,从而提升了字符快比较的效率。
在一个实施例中,所述S32、获取所述预进行数据同步的终端对所述数个差异子块的反馈信息,根据所述反馈信息对所述初始页面进行渲染,得到所述实时页面,包括:
获取所述预进行数据同步的终端对所述差异子块的反馈信息,若所述反馈信息中包含所述差异子块的数据,则删除所述差异子块;
其中,在进行页面同步时,需要对页面信息进行实时监控,若某一子块的信息已经被更新完成,可能存在着数据滞后的问题,因而需要对预进行数据同步的终端进行实时监控,以防止重复传输数据造成效率降低。
若所述反馈信息中不包含所述差异子块的数据,则将所述差异子块的信息转换成新页面参数,根据所述新页面参数对所述初始页面参数进行更新渲染后得到所述实时页面。
具体的,若所述反馈信息中不包含所述差异子块的数据,则获取所述差异子块中包含的差异字符和差异标识这两个差异子块信息;根据差异标识和预设位置坐标规则,确定差异字符位置;根据所述差异字符、所述差异字符位置和所述初始字符串,确定所述差异子块对应页面的实时字符串,根据所述差异子块对应页面的实时字符串进行渲染后得到所述实时页面。
本实施例,通过对反馈信息进行分析,从而准确的获知当前数据传输的情况。
在一个实施例中,提出了一种页面信息同步显示的装置,如图5所示,包括如下模块:
初始页面获取模块51,设置为接收预进行数据同步的终端发出的同步请求指令,根据所述同步请求指令查询数据库,得到与所述同步显示指令相符的初始页面的页面代码,根据所述页面代码生成待更新初始页面;
页面数据建立模块52,设置为获取所述预进行数据同步的终端发出的页面更新请求指令,根据所述页面更新请求指令确定所述待更新初始页面所对应的初始字符串,获取页面存储端的实时页面对应的实时字符串,将所述初始字符串和所述实时字符串进行比对后,得到待传输的页面数据;
实时页面渲染模块53,设置为发送所述待传输的页面数据至所述预进行数据同步的终端,根据所述待传输的页面数据对所述初始页面进行渲染后得到所述实时页面。
在一个实施例中,提出了一种计算机设备,所述计算机设备包括存储器和处理器,存储器中存储有计算机可读指令,计算机可读指令被处理器执行时,使得处理器执行上述各实施例中的所述页面信息同步显示的方法的步骤。
在一个实施例中,提出了一种存储有计算机可读指令的存储介质,该计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述各实施例中的所述页面信息同步显示的方法的步骤。其中,所述存储介质可以为非易失性存储介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、磁盘或光盘等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请一些示例性实施例,其中描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。