一种页面处理方法、装置以及相关设备与流程

文档序号:15932721发布日期:2018-11-14 01:53阅读:147来源:国知局

本发明涉及计算机技术领域,尤其涉及一种页面处理方法、装置以及相关设备。

背景技术

以http(超文本传输协议,hypertexttransferprotocol)协议为基础的worldwideweb(万维网)的发展使得网页访问信息量剧增,随着网页访问量的迅速发展,也改变了人们获取信息和进行消费的方式。人们更愿意通过网络获取各种资讯,寻找数码新品、电影和歌曲,网上购物、交易。万维网已成为人们获取信息的重要途径。

现有的通过浏览器访问网页的过程为:用户通过浏览器发送网页访问请求,服务器返回该请求所对应的网页html(超级文本标记语言,hypertextmarkuplanguage)文本内容。浏览器解析该文本内容,并向服务器请求该文本内容对应的资源,再根据从服务器获取到资源,在屏幕中显示对应的页面。但向服务器请求资源的耗时依赖于网络速度和服务器的响应速度,一旦网络速度存在延迟或者服务器响应速度缓慢,就会延长浏览器显示网页的时间,进而降低页面的显示效率和访问效率。



技术实现要素:

本发明实施例提供一种页面处理方法、装置以及相关设备,可以降低页面响应时间,提高页面显示的流畅性,进而提高页面的访问效率。

本发明一方面提供了一种页面处理方法,包括:

当检测到浏览器对应的启动指令时,根据所述启动指令获取高频资源文件记录表;所述高频资源文件记录表包括历史页面中资源文件的访问频率大于频率阈值的资源文件对应的路径信息;

根据所述高频资源文件记录表,从服务器拉取资源文件,并将拉取的资源文件存储于目标缓存中;所述目标缓存中包括所述高频资源文件记录表对应的所有资源文件;

当接收到页面获取请求,且所述目标缓存包括所述页面获取请求所请求的资源文件时,从所述目标缓存中读取所述页面获取请求所请求的资源文件,作为目标资源文件,并根据所述目标资源文件显示所述页面获取请求所请求的目标页面。

其中,所述根据所述高频资源文件记录表,从服务器拉取资源文件,并将拉取的资源文件存储于目标缓存中,包括:

将所述目标缓存中未过期的资源文件对应的路径信息组合为有效路径信息集合;

将属于所述高频资源文件记录表,且不属于所述有效路径信息集合的路径信息,作为待拉取路径信息;

从所述服务器中拉取所述待拉取路径信息对应的资源文件,将所述待拉取路径信息对应的资源文件存储于所述目标缓存中。

其中,所述从所述服务器中拉取所述待拉取路径信息对应的资源文件,包括:

注册、安装并激活服务代理进程,读取激活后的代理进程中的脚本程序,根据读取后的脚本程序从所述服务器拉取所述待拉取路径信息对应的资源文件;

当所述待拉取路径信息对应的资源文件拉取完成时,关闭所述服务代理进程。

其中,所述资源文件包括:关键资源文件;所述关键资源文件是指拉取资源文件的时间点与解析页面程序的时间点不重合的资源文件;

所述方法还包括:

在页面访问历史记录中,选择具有最大访问时间戳的页面作为辅助页面,将所述辅助页面的访问时间戳作为结束时间戳;

根据所述结束时间戳和统计预设时长,确定起始时间戳,在所述页面访问历史记录对应的所有页面中,将所述接收时间戳和所述起始时间戳之间的页面,作为待确定页面;

统计各待确定页面中的关键资源文件的访问频率,根据统计出来的关键资源文件的访问频率,对所述高频资源文件记录表进行更新。

其中,所述根据统计出来的关键资源文件的访问频率,对所述高频资源文件记录表进行更新,包括:

将访问频率大于所述频率阈值的关键资源文件,作为待添加关键资源文件,若所述待添加关键资源文件对应的路径信息不存在于所述高频资源文件记录表中,则在所述高频资源文件记录表中添加所述待添加关键资源文件对应的路径信息;

将访问频率小于或等于所述频率阈值的关键资源文件,作为待删除关键资源文件,若所述待删除关键资源文件对应的路径信息存在于所述高频资源文件记录表中,则在所述高频资源文件记录表中删除所述待删除关键资源文件对应的路径信息。

其中,所述目标页面包括首屏页面;

所述从所述目标缓存中读取所述页面获取请求所请求的资源文件,作为目标资源文件,并根据所述目标资源文件显示所述页面获取请求所请求的目标页面,包括:

若目标页面程序中包括首屏标记辅助标签,则根据所述首屏标记辅助标签对所述目标页面程序进行解析得到解析路径信息,并在所述目标缓存中读取与所述解析路径信息对应的资源文件,作为目标资源文件;所述目标页面程序是根据所述页面获取请求从所述服务器获取到的页面程序;

当解析到首屏标签时,停止解析所述目标页面程序,并停止从所述目标缓存中读取资源文件;

将解析后的目标页面程序和所述目标资源文件进行排版处理,得到首屏页面,并将所述首屏页面进行绘制处理,以显示所述首屏页面。

其中,还包括:

若所述目标页面程序中不包括所述首屏标记辅助标签,则对所述目标页面程序进行解析得到解析路径信息,并在所述目标缓存中读取与所述解析路径信息对应的资源文件,作为目标资源文件;

在解析所述目标页面程序和读取资源文件时,统计解析数据量,当所述解析数据量满足首屏数据量条件时,停止解析所述目标页面程序,并停止从所述目标缓存中读取资源文件;

将解析后的目标页面程序和所述目标资源文件进行排版处理,得到首屏页面,并将所述首屏页面进行绘制处理,以显示所述首屏页面。

其中,所述当检测到浏览器对应的启动指令时,根据所述启动指令获取高频资源文件记录表,包括:

当检测到浏览器对应的启动指令时,生成静态页面加载请求;

将所述静态页面加载请求封装在所述启动指令中;

根据封装后的启动指令中的静态页面加载请求,获取所述高频资源文件记录表,并加载非可视化的静态页面。

本发明另一方面提供了一种页面处理装置,包括:

获取模块,用于当检测到浏览器对应的启动指令时,根据所述启动指令获取高频资源文件记录表;所述高频资源文件记录表包括历史页面中资源文件的访问频率大于频率阈值的资源文件对应的路径信息;

拉取模块,用于根据所述高频资源文件记录表,从服务器拉取资源文件,并将拉取的资源文件存储于目标缓存中;所述目标缓存中包括所述高频资源文件记录表对应的所有资源文件;

显示模块,用于当接收到页面获取请求,且所述目标缓存包括所述页面获取请求所请求的资源文件时,从所述目标缓存中读取所述页面获取请求所请求的资源文件,作为目标资源文件,并根据所述目标资源文件显示所述页面获取请求所请求的目标页面。

其中,所述拉取模块,包括:

组合单元,用于将所述目标缓存中未过期的资源文件对应的路径信息组合为有效路径信息集合;

确定单元,用于将属于所述高频资源文件记录表,且不属于所述有效路径信息集合的路径信息,作为待拉取路径信息;

拉取单元,用于从所述服务器中拉取所述待拉取路径信息对应的资源文件;

所述确定单元,还用于将所述待拉取路径信息对应的资源文件存储于所述目标缓存中。

其中,所述拉取单元,包括:

开启子单元,用于注册、安装并激活服务代理进程,读取激活后的代理进程中的脚本程序,根据读取后的脚本程序从所述服务器拉取所述待拉取路径信息对应的资源文件;

关闭子单元,用于当所述待拉取路径信息对应的资源文件拉取完成时,关闭所述服务代理进程。

其中,所述资源文件包括:关键资源文件;所述关键资源文件是指拉取资源文件的时间点与解析页面程序的时间点不重合的资源文件;

所述装置还包括:

选取模块,用于在页面访问历史记录中,选择具有最大访问时间戳的页面作为辅助页面,将所述辅助页面的访问时间戳作为结束时间戳;

所述选取模块,还用于根据所述结束时间戳和统计预设时长,确定起始时间戳,在所述页面访问历史记录对应的所有页面中,将所述接收时间戳和所述起始时间戳之间的页面,作为待确定页面;

统计模块,用于统计各待确定页面中的关键资源文件的访问频率;

更新模块,用于根据统计出来的关键资源文件的访问频率,对所述高频资源文件记录表进行更新。

其中,所述更新模块,包括:

添加单元,用于将访问频率大于所述频率阈值的关键资源文件,作为待添加关键资源文件,若所述待添加关键资源文件对应的路径信息不存在于所述高频资源文件记录表中,则在所述高频资源文件记录表中添加所述待添加关键资源文件对应的路径信息;

删除单元,用于将访问频率小于或等于所述频率阈值的关键资源文件,作为待删除关键资源文件,若所述待删除关键资源文件对应的路径信息存在于所述高频资源文件记录表中,则在所述高频资源文件记录表中删除所述待删除关键资源文件对应的路径信息。

其中,所述目标页面包括首屏页面;

所述显示模块,包括:

解析单元,用于若目标页面程序中包括首屏标记辅助标签,则根据所述首屏标记辅助标签对所述目标页面程序进行解析得到解析路径信息,并在所述目标缓存中读取与所述解析路径信息对应的资源文件,作为目标资源文件;所述目标页面程序是根据所述页面获取请求从所述服务器获取到的页面程序;

停止单元,用于当解析到首屏标签时,停止解析所述目标页面程序,并停止从所述目标缓存中读取资源文件;

绘制单元,用于将解析后的目标页面程序和所述目标资源文件进行排版处理,得到首屏页面,并将所述首屏页面进行绘制处理,以显示所述首屏页面。

其中,所述显示模块,还包括:

所述解析单元,还用于若所述目标页面程序中不包括所述首屏标记辅助标签,则对所述目标页面程序进行解析得到解析路径信息,并在所述目标缓存中读取与所述解析路径信息对应的资源文件,作为目标资源文件;

统计单元,用于在解析所述目标页面程序和读取资源文件时,统计解析数据量,当所述解析数据量满足首屏数据量条件时,停止解析所述目标页面程序,并停止从所述目标缓存中读取资源文件;

绘制单元,还用于将解析后的目标页面程序和所述目标资源文件进行排版处理,得到首屏页面,并将所述首屏页面进行绘制处理,以显示所述首屏页面。

其中,所述获取模块,包括:

生成单元,用于当检测到浏览器对应的启动指令时,生成静态页面加载请求;

封装单元,用于将所述静态页面加载请求封装在所述启动指令中;

加载单元,用于根据封装后的启动指令中的静态页面加载请求,获取所述高频资源文件记录表,并加载非可视化的静态页面。

本发明另一方面提供了一种电子设备,包括:处理器和存储器;

所述处理器和存储器相连,其中,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行如本发明实施例中一方面中的方法。

本发明另一方面提供了一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,执行如本发明实施例中一方面中的方法。

本发明实施例通过当检测到浏览器对应的启动指令时,根据启动指令获取高频资源文件记录表;高频资源文件记录表包括历史页面中资源文件的访问频率大于频率阈值的资源文件对应的路径信息;根据高频资源文件记录表,从服务器拉取资源文件,并将拉取的资源文件存储于目标缓存中;目标缓存中包括高频资源文件记录表对应的所有资源文件;当接收到页面获取请求,且目标缓存包括页面获取请求所请求的资源文件时,从目标缓存中读取页面获取请求所请求的资源文件,作为目标资源文件,并根据目标资源文件显示页面获取请求所请求的目标页面。上述可知,在浏览器启动时,就将高频访问的资源文件提前拉取至目标缓存中,当接收到页面获取请求时,若该请求所涉及的资源文件存在于缓存中,直接在缓存中拉取资源文件而不必通过服务器拉取资源文件。由于预拉取的资源文件是高频访问的资源文件,因此页面获取请求所涉及的资源文件存在于缓存中的概率会大大提高,即在缓存中就可以直接获取到资源文件进行显示,而不需和服务器频繁交互,可以降低页面响应耗时,提高页面显示的流畅性,进而提高页面的访问效率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1a-图1b是本发明实施例提供的一种页面处理方法的场景示意图;

图2是本发明实施例提供的一种页面处理方法的流程示意图;

图3是本发明实施例提供的一种拉取资源文件的流程示意图;

图4是本发明实施例提供的另一种页面处理方法的流程示意图;

图5a是本发明实施例提供的另一种页面处理方法的流程示意图;

图5b是本发明实施例提供的一种显示首屏页面的流程示意图;

图5c是本发明实施例提供的另一种显示首屏页面的流程示意图;

图6是本发明实施例提供的一种页面处理装置的结构示意图;

图7是本发明实施例提供的一种电子设备的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参见图1a—图1b,是本发明实施例提供的一种页面处理方法的场景示意图。移动终端10a通过互联网和服务器10b建立连接,当用户在移动终端中的界面10c中双击浏览器图标,进入浏览器界面的同时,移动终端10a生成静态页面加载请求,用于获取高频资源文件记录表10e和加载预设的非可视化的静态页面,根据高频资源文件记录表10e中记录的url(uniformresourcelocator,统一资源定位符),从服务器10b中拉取各url对应的资源文件,当然为了降低和服务器10b之间的交互频率,在拉取资源文件之前,可以首先检测浏览器缓存10d中是否存在该资源文件,且该资源文件是否为未过期的资源文件,若满足上述两个条件,即浏览器缓存10d中存储了该资源文件,且该资源文件为未过期资源文件,那么不必向服务器10b请求该资源文件;若浏览器缓存10d中不存在该资源文件或者存在该资源文件但资源文件已过期,那么移动终端10a中的浏览器才向服务器10b请求资源文件,使得服务器10b向移动终端发送所请求的资源文件。拉取完高频资源文件记录表10e中的资源文件后,浏览器缓存10d中就存储了该高频资源文件记录表10e中所记录的所有资源文件,当然上述资源文件均是在有效期内的资源文件。如图1b所示,由于高频资源文件记录表10e中包括3个url,分别为:“a”、“b”、“c”,其中“a”、“b”、“c”均可以为css(cascadingstylesheets,层叠样式表)资源文件的url、或js(javascript,直译式脚本语言)资源文件的url、或者图片资源文件的url。拉取完高频资源文件记录表10e对应的资源文件后,浏览器缓存10d中就包括url“a”对应的资源文件、url“b”对应的资源文件,以及url“c”对应的资源文件。

用户在浏览器界面10f中的输入框中,输入待访问网页的网址,移动终端获取到网址后,生成页面获取请求,向上述网址对应的服务器10b发送该请求以获取该网址对应页面的html(hypertextmarkuplanguage,超级文本标记语言)文本内容10h,浏览器解析该html文本内容10h,得到该网页中待拉取资源文件的url,若该url在对应的资源文件在浏览器缓存10d中且资源文件是未过期的,说明命中浏览器缓存10d,就在浏览器缓存10d中直接读取该url对应的资源文件,由于浏览器缓存10d中存储的是高频且新鲜的资源文件,因此待拉取资源文件的url会大概率的命中浏览器缓存10d,例如从html文本内容10h解析出来的url包括“a”和“b”,由于浏览器缓存10d已经存储了对应的资源文件,因此可以在浏览器缓存10d中直接读取url“a”对应的资源文件,和url“b”对应的资源文件。需要说明的是,若读取的是非关键资源文件,则浏览器解析html文本内容10h和读取资源文件是在两个线程中同步进行的;若读取的是关键资源文件(例如js动态网页资源文件或者css静态网页资源文件等),则浏览器解析html文本内容10h和读取资源文件是在两个线程中异步进行的,即解析html文本内容10h的线程就要暂停,等待关键资源文件读取完毕后再启动解析html文本内容10h的线程。当解析到html文本内容10h中的首屏标签时,首屏标签可以表示为“<first-screen/n>”,停止解析剩余的html文本内容,并停止读取资源文件。根据已经解析的html文本内容,以及已经读取的资源文件进行排版处理和绘制处理,得到首屏页面,并在移动终端的屏幕上显示该首屏页面10g,其中首屏页面是可以占满移动终端屏幕的页面,当然首屏页面是整个html文本内容10h对应页面的子页面。待在屏幕中显示首屏页面10g后,可以继续解析未解析的html文本内容和读取未读取的资源文件。通过提前拉取高频资源文件记录表中对应的资源文件到缓存中,待生成页面获取请求后,可以直接在缓存中读取该页面获取请求对应的资源文件,由于提前拉取的是高频使用的资源文件,因此与页面访问请求指令对应的资源文件会很大概率的存在于缓存中,就无需从服务器获取资源文件,降低移动终端和服务器交互频率,因此降低页面耗时,同时当检测到首屏标签时就停止解析文本内容,可以加速首屏页面的显示,提高首屏页面显示的流畅性,增加页面访问效率。

当用户退出浏览器后或者是用户每次访问完一个页面后,统计用户访问过的的页面(历史页面)中资源文件的访问频率,将访问频率大于频率阈值的资源文件对应的url添加至高频资源文件记录表10e中,将访问频率小于或等于频率阈值的资源文件对应的url从高频资源文件记录表10e中删除,也就是说,根据历史网页中所涉及的资源文件的访问频率,对高频资源文件记录表10e进行更新,使得高频资源文件记录表10e中记录的始终是最新且最高频访问的资源文件对应的url。

其中,构建高频资源文件记录表、拉取资源文件的具体过程可以参见以下图2至图5c所对应的实施例。

进一步地,请参见图2,是本发明实施例提供的一种页面处理方法的流程示意图。如图2所示,所述页面处理方法可以包括:

步骤s101,当检测到浏览器对应的启动指令时,根据所述启动指令获取高频资源文件记录表。

具体的,用户点击移动终端中的浏览器图标,用于生成浏览器对应的启动指令,同时,浏览器主动生成静态页面加载请求,该静态页面加载请求用于请求加载预设的非可视化的静态页面。将生成的静态页面加载请求封装在启动指令中,并根据封装后的启动指令中的静态页面加载请求获取高频资源文件记录表(如图1b所对应实施例中的高频资源文件记录表10e),以及根据封装后的启动指令中的静态页面加载请求,加载对应的静态页面,该静态页面为非可视化的静态页面,换句话说,打开浏览器时,浏览器就会主动生成静态页面加载请求,该请求可以触发浏览器获取高频资源文件记录表、以及触发浏览器加载非可视化的静态页面。可以知道,高频资源文件记录表是提前存储在移动终端中的,且该高频资源文件记录表中记录的是历史页面中访问频率大于预设的频率阈值的资源文件对应的路径信息,历史页面是通过浏览器已经访问过的页面,页面中包括多个资源文件,例如,图片资源文件、css资源文件、js资源文件、多媒体资源文件等。路径信息是对应资源文件在互联网中的位置信息,每个资源文件都对应一个唯一的路径信息,路径信息可以是url。

步骤s102,根据所述高频资源文件记录表,从服务器拉取资源文件,并将拉取的资源文件存储于目标缓存中。

具体的,在加载静态页面时,触发serviceworker(服务代理进程)拉取静态页面中所涉及的资源文件,以及根据高频资源文件记录表中所记录的路径信息,从服务器中拉取高频资源文件记录表中记录的路径信息所对应的资源文件。服务代理进程包括一段运行在浏览器后台进程里的脚本,它独立于当前页面,用于提供那些不需要与当前页面交互的功能,此处服务代理进程就提供拉取资源文件的功能。因为拉取的资源文件的来源多样性,服务器可以是多个来源不同的服务器,例如,高频资源文件记录表中记录服务器a中资源文件a的路径信息、和记录服务器b中资源文件b的路径信息,因此就分别从服务器a拉取资源文件a和从服务器b拉取资源文件b,且将服务器a和服务器b统称为服务器。将从服务器拉取的资源文件存储在浏览器对应的缓存中(如图1b所对应实施例中的浏览器缓存10d),其中浏览器对应的缓存称为目标缓存,拉取资源文件后的目标缓存中就包括高频资源文件记录表中记录的所有资源文件。需要说明的是,拉取资源文件时,可以从服务器拉取高频资源文件记录表中所有路径信息对应的资源文件,也可以首先检测目标缓存中未过期的资源文件对应的路径信息,然后将高频资源文件记录表和检测出来的未过期的资源文件对应的路径信息进行比对,拉取高频资源文件记录表中存在但目标缓存中不存在的路径信息对应的资源文件,和拉取高频资源文件记录表中存在且缓存中也存在但已经过期的资源文件,目的就是使得拉取资源文件后的目标缓存中包括高频资源文件记录表对应的所有资源文件,且上述所有资源文件都是未过期的资源文件。目标缓存是用于存储历史网页中的资源文件,历史网页是已经访问过的网页。从浏览器内核层面来看,为了提前拉取资源文件,在浏览器内核中添加了一段可以主动生成静态页面加载请求的程序代码,以及一个判断机制,该判断机制具体包括:若检测到浏览器主动生成静态页面加载请求,则获取高频资源文件记录表并加载非可视化的静态页面,进而在加载静态页面时,触发浏览器根据获取到的高频资源文件记录表,从服务器拉取资源文件;若检测到浏览器被动接收到页面获取请求(例如,通过用户输入网址所接收到的页面获取请求),则不必获取高频资源文件记录表,也就不必提前从服务器拉取资源文件。

检测资源文件在目标缓存中是否过期的方法具体为:从服务器中拉取的资源文件携带获取时间戳,获取时间戳用于标识获取资源文件的时间。当检测到目标缓存中存资源文件a时,将当前的时间戳确定为截止时间戳,计算资源文件a的获取时间戳和截止时间戳之间的时长,若该时长大于预设的时长阈值,则说明资源文件a已经过期;若该时长小于或等于预设的时长阈值,则说明资源文件a仍在有效期内。当有多个资源文件需要检测是否过期时,可以采用上述方法分别检测每个资源文件是否过期。举例来说,资源文件a从服务器获取的获取时间戳是2018.06.08.10:20,当检测到目标缓存中存资源文件a时,当前的时间戳为2018.06.08.10:50(即是截止时间戳为2018.06.08.10:50),而预设的时长阈值为5分钟,由于资源文件a的获取时间戳至截止时间戳之间的时长为30分钟,30分钟大于5分钟,因此资源文件a是已过期的资源文件。

步骤s103,当接收到页面获取请求,且所述目标缓存包括所述页面获取请求所请求的资源文件时,从所述目标缓存中读取所述页面获取请求所请求的资源文件,作为目标资源文件,并根据所述目标资源文件显示所述页面获取请求所请求的目标页面。

具体的,用户通过浏览器界面输入网址,或者点击浏览器界面中各网页对应图标,用于生成页面获取请求(此处的页面获取请求是根据用户所选择的网址确定的,而不同于前述中的静态页面加载请求是浏览器主动生成的)。移动终端向服务器发送该页面获取请求,服务器响应后,向移动终端返回该页面获取请求所请求页面的html文本内容,称为目标页面程序。浏览器按照从上至下的顺序解析该目标页面程序,可以得到目标页面程序中待拉取资源文件的路径信息,若解析得到的路径信息对应的资源文件存在于目标缓存中,则从目标缓存中直接读取该资源文件,得到目标资源文件;当然,若解析到的路径信息对应的资源文件不存在与目标缓存中,则向服务器拉取并读取该资源文件,得到目标资源文件,其中若读取的是图片资源文件,可以将该图片作为目标资源文件,若读取的是css资源文件或js资源文件,可以将css资源文件的运行结果或js资源文件的运行结果,作为目标资源文件。值得注意的是,解析目标页面程序和读取资源文件这两个过程,在读取非关键资源文件时是并行处理,在读取关键资源文件时是串行处理。关键资源文件是页面程序解析和资源文件读取不能同时进行的资源文件;对应的,非关键资源是页面程序解析和资源文件读取可以同时进行的资源文件。将解析后的目标页面程序和目标资源文件进行排版处理和绘制处理,以使目标页面程序对应的目标页面在移动终端中的屏幕上显示。若目标页面的尺寸大于屏幕尺寸的,为了减少用户等待时间和加快页面响应时间,可以优先把首屏页面进行绘制上屏,而不必等待整个目标页面程序解析完毕以及目标页面程序涉及的资源文件读取完毕,才对整个目标页面进行绘制上屏,其中首屏页面是可以占满一整块屏幕的页面,目标页面是与目标页面程度对应的页面。

对首屏页面优先绘制上屏的过程是:当解析目标页面程序时,若解析到首屏标签,那么就停止解析剩余的目标页面程序和停止读取剩余的资源文件,转而将已经解析的目标页面程序和目标资源文件,进行排版处理得到首屏页面,再将首屏页面进行绘制处理,以使该首屏页面在屏幕中显示。显示完首屏页面后,可以继续对剩余的目标页面程序进行解析和继续在目标缓存中读取资源文件。这样可以快速向用户展示首屏页面,减少用户的等待时间。首屏标签是由目标页面程序的开发人员在目标页面程序中添加的,这是因为只有目标页面程序的开发人员最清楚首屏页面对应的页面程序在目标页面程序中的位置区域,对移动终端中的浏览器来说,只需要提供一个接口,用于识别该首屏标签。在实际应用中,由于开发人员在开发目标页面时,使用的都是页面模板,即是页面的排版没有变化,只是对目标页面中的内容进行替换。因此,只要目标页面的版式没有改变,首屏标签的位置就不用作调整,只有当目标页面的版式发生了较大改变时,开发人员才需要重新在目标页面对应的页面模板中调整首屏标签的位置。

可选的,资源文件包括关键资源文件和非关键资源文件,其中关键资源文件是拉取关键资源文件时,会阻塞页面程序的解析,换句话说,关键资源文件即是页面程序解析和资源文件拉取不能同时进行的资源文件;对应的,非关键资源是页面程序解析和资源文件拉取可以同时进行的资源文件。在页面访问历史记录中,选择具有最大访问时间戳的页面作为辅助页面,即辅助页面就是通过浏览器最近一次访问的页面。将辅助页面的访问时间戳作为结束时间戳,其中页面访问历史记录中记录了已经访问过的页面(历史页面)的url、访问时间戳、访问类型等。根据结束时间戳和预设的统计预设时长,确定起始时间戳,即结束时间戳至起始时间戳之间的时长就等于统计预设时长。在页面访问历史记录中所记录的所有历史页面中,将结束时间戳和起始时间戳之间的页面,称为待确定页面。提取所有待确定页面中所涉及的所有关键资源文件,统计各关键资源文件的访问频率,根据各关键资源的访问频率对高频资源文件记录表进行更新。换句话说,即是为最近一次访问的辅助页面创建时间窗口,统计该时间窗口内所有页面中关键资源文件的访问频率,进而根据统计出来的访问频率对高频资源文件进行更新。这样可以保证高频资源文件记录表中记录的路径信息对应的关键资源文件是最近时间段内具有较高访问频率的资源文件。

根据各关键资源文件的访问频率,对高频资源文件记录表的更新过程具体为:将访问频率大于预设的频率阈值的关键资源文件,称为待添加关键资源文件,下面以一个待添加关键资源文件为例,进行说明。若待添加关键资源文件的对应的路径信息没有存在于高频资源文件记录表中,则在高频资源文件记录表中添加该待添加关键资源文件对应的路径信息。当然,若待添加关键资源文件对应的路径信息已经存在于高频资源文件记录表中,那么可以对该待添加关键资源文件对应的路径信息不作任何处理。若有多个待添加关键资源文件,可以对每个待添加关键资源文件分别执行上述步骤,用于更新高频资源文件记录表。将访问频率小于或等于预设的频率阈值的关键资源文件,称为待删除关键资源文件,下面以一个待删除关键资源文件为例,进行说明。若待删除关键资源文件的对应的路径信息存在于高频资源文件记录表中,则在高频资源文件记录表中删除该待添加关键资源文件对应的路径信息。当然,若待删除关键资源文件对应的路径信息没有存在于高频资源文件记录表中,那么可以对该待删除关键资源文件对应的路径信息不作任何处理。若有多个待删除关键资源文件,可以对每个待删除关键资源文件分别执行上述步骤,用于更新高频资源文件记录表。

进一步地,请参见图3,图3是本发明实施例提供的一种拉取资源文件的流程示意图。如图3所示,拉取资源文件的具体过程包括如下步骤s201-步骤s203,且步骤s201-步骤s203为图2所对应实施例中步骤s102的一个具体实施例:

步骤s201,将所述目标缓存中未过期的资源文件对应的路径信息组合为有效路径信息集合。

具体的,检测目标缓存中资源文件是否过期,将未过期的资源文件对应的路径信息组合为集合,称为有效路径信息集合。检测资源文件是否过期的具体过程可以参见图2对应实施例中的步骤102。

步骤s202,将属于所述高频资源文件记录表,且不属于所述有效路径信息集合的路径信息,作为待拉取路径信息。

具体的,将属于高频资源文件记录表,但不属于有效路径信息集合的路径信息,确定为待拉取路径信息。举例来说,高频资源记录表中记录了路径信息a1、路径信息b1、路径信息c1,有效路径信息集合包括路径信息a1、路径信息c1、路径信息e1,属于高频资源文件记录表但不属于有效路径信息集合的路径信息是:路径信息b1,因此路径信息b1即是待拉取路径信息。

步骤s203,从所述服务器中拉取所述待拉取路径信息对应的资源文件,将所述待拉取路径信息对应的资源文件存储于所述目标缓存中。

具体的,从服务器拉取待拉取路径信息对应的资源文件,并将拉取的资源文件存储在目标缓存中,使得目标缓存中包括高频资源记录表所记录的所有路径信息对应的资源文件,且所有路径信息对应的资源文件均为未过期的资源文件。从服务器拉取待拉取路径信息对应的资源文件的具体过程为:注册、安装并激活serviceworker,该serviceworker称为服务代理进程。服务代理进程包括一段运行在浏览器后台进程里的脚本,它独立于当前页面,用于提供那些不需要与当前页面交互的功能。读取服务代理进程中的脚本程序,并运行该脚本程序,用于向服务器拉取待拉取路径信息对应的资源文件。当所有待拉取路径信息对应的资源文件都拉取完毕后,关闭上述服务代理进程。需要说明的是每次根据待拉取路径信息拉取资源文件时,都需要注册、安装并激活serviceworker,待所有的待拉取路径信息对应的资源文件均拉取完毕后,就关闭serviceworker,且在根据静态页面加载请求加载静态页面时,就可以触发serviceworker根据获取到的高频资源文件记录表从服务器中拉取资源文件。

本发明实施例通过当检测到浏览器对应的启动指令时,根据启动指令获取高频资源文件记录表;高频资源文件记录表包括历史页面中资源文件的访问频率大于频率阈值的资源文件对应的路径信息;根据高频资源文件记录表,从服务器拉取资源文件,并将拉取的资源文件存储于目标缓存中;目标缓存中包括高频资源文件记录表对应的所有资源文件;当接收到页面获取请求,且目标缓存包括页面获取请求所请求的资源文件时,从目标缓存中读取页面获取请求所请求的资源文件,作为目标资源文件,并根据目标资源文件显示页面获取请求所请求的目标页面。上述可知,在浏览器启动时,就将高频访问的资源文件提前拉取至目标缓存中,当接收到页面获取请求时,若该请求所涉及的资源文件存在于缓存中,直接在缓存中拉取资源文件而不必通过服务器拉取资源文件。由于预拉取的资源文件是高频访问的资源文件,因此页面获取请求所涉及的资源文件存在于缓存中的概率会大大提高,即在缓存中就可以直接获取到资源文件进行显示,而不需和服务器频繁交互,可以降低页面响应耗时,提高页面显示的流畅性,进而提高页面的访问效率。

请一并参见图4,是本发明实施例提供的另一种页面处理方法的流程示意图,页面处理方法包括如下步骤:

步骤s301,当检测到浏览器对应的启动指令时,根据所述启动指令获取高频资源文件记录表。

步骤s302,根据所述高频资源文件记录表,从服务器拉取资源文件,并将拉取的资源文件存储于目标缓存中。

其中,步骤s301-步骤s302的具体实现方式可以参见上述图2所对应实施例中的步骤s101-步骤s102,此处不再赘述。

步骤s303,当接收到页面获取请求,且所述目标缓存包括所述页面获取请求所请求的资源文件时,若目标页面程序中包括首屏标记辅助标签,则根据所述首屏标记辅助标签对所述目标页面程序进行解析得到解析路径信息,并在所述目标缓存中读取与所述解析路径信息对应的资源文件,作为目标资源文件。

具体的,用户通过浏览器界面输入网址,或者点击浏览器界面中各网页对应图标,用于生成页面获取请求。移动终端向服务器发送该页面获取请求,服务器响应后,向移动终端返回该页面获取请求所请求页面的html文本内容,称为目标页面程序。在目标页面程序中的头部检测是否存在首屏标记辅助标签,上述首屏标记辅助标签可以表示为:<metaname=”x5-pagetype”content=”optpage”>,若目标页面程序中的头部存在首屏标记辅助标签,根据该首屏标记辅助标签对目标页面程序进行解析,得到目标页面程序中待拉取的资源文件对应的路径信息,称为解析路径信息。若解析路径信息对应的资源文件存在于目标缓存中,那么直接从目标缓存中读取该资源文件,得到目标资源文件。解析目标页面程序和从缓存中读取资源文件是在两个线程中分别完成的,若读取的资源文件是关键资源文件,那么解析目标页面程序所在的线程就会被挂起,即是暂停运行该线程,待关键资源文件从目标缓存中读取完毕后,再启动解析目标页面程序的线程。这是因为关键资源文件的操作会涉及到dom(documentobjectmodel,文档对象模型)树节点的增加、删除,也即是会改变dom树的结构。因而必须等待关键资源文件返回才能继续解析目标页面程序。换句话说,解析目标页面程序和读取资源文件这两个过程,在读取非关键资源文件时是并行处理,在读取关键资源文件时是串行处理。

步骤s304,当解析到首屏标签时,停止解析所述目标页面程序,并停止从所述目标缓存中读取资源文件。

具体的,当解析到目标页面程序中的首屏标签时,就停止解析目标页面程序,即是停止解析目标页面程序所在线程的运行,同时也停止从目标缓存中读取资源文件,其中首屏标签可以表示为<first-screen/>。

步骤s305,将解析后的目标页面程序和所述目标资源文件进行排版处理,得到首屏页面,并将所述首屏页面进行绘制处理,以显示所述首屏页面。

具体的,将已经解析完成的目标页面程序和已经得到的目标资源文件进行排版处理,得到首屏页面,再将首屏页面进行绘制处理,以使首页页面在屏幕中显示,其中首屏页面是可以占满屏幕的页面,当然首屏页面是目标页面的子页面,目标页面是与目标页面程序对应的页面。快速显示首屏页面是为了减少用户等待网页响应的时间,待首屏页面显示完成后,可以继续解析目标页面程序中未解析的页面程序以及未拉取的资源文件。需要说明的是,由于解析目标页面程序和排版处理可以在同一个线程中,因此可以不必等待解析目标页面程序和拉取资源文件暂停后,再进行排版处理,而可以是解析了部分目标页面程序后就进行排版,例如,可以是解析了10个token(片段)就对已经解析的token和已经拉取的资源文件进行排版处理(但此时还没有检测到首屏标签),也就是说解析和排版是交错进行的。

步骤s306,当接收到页面获取请求,且所述目标缓存包括所述页面获取请求所请求的资源文件时,若所述目标页面程序中不包括所述首屏标记辅助标签,则对所述目标页面程序进行解析得到解析路径信息,并在所述目标缓存中读取与所述解析路径信息对应的资源文件,作为目标资源文件。

具体的,用户通过浏览器界面输入网址,或者点击浏览器界面中各网页对应图标,用于生成页面获取请求。移动终端向服务器发送该页面获取请求,服务器响应后,向移动终端返回该页面获取请求所请求页面的html文本内容,称为目标页面程序。在目标页面程序中的头部检测是否存在首屏标记辅助标签,该首屏标记辅助标签可以表示为:<metaname=”x5-pagetype”content=”optpage”>,若目标页面程序中的头部不存在首屏标记辅助标签,直接对目标页面程序进行解析,得到目标页面程序中待拉取的资源文件对应的路径信息,称为解析路径信息。若解析路径信息对应的资源文件存在于目标缓存中,那么直接从目标缓存中读取该资源文件,得到目标资源文件。

步骤s307,在解析所述目标页面程序和读取资源文件时,统计解析数据量,当所述解析数据量满足首屏数据量条件时,停止解析所述目标页面程序,并停止从所述目标缓存中读取资源文件。

具体的,在解析目标页面程序和从目标缓存中读取资源文件时,统计解析数据量,解析数据量可以是解析耗时,或者是解析token的数量。当解析数据量是解析耗时时,若解析耗时超过预设时长(例如预设时长为500ms),那么说明解析数据量满足首屏数据量条件,或者当解析数据量是解析token的数量时,若解析token的数量超过数量阈值(例如数量阈值为1024),也说明解析数据量满足首屏数据量条件。若检测到数据量满足首屏数据量条件,就停止解析目标页面程序和停止从目标缓存中读取资源文件。

步骤s308,将解析后的目标页面程序和所述目标资源文件进行排版处理,得到首屏页面,并将所述首屏页面进行绘制处理,以显示所述首屏页面。

具体的,将已经解析完成的目标页面程序和已经得到的目标资源文件进行排版处理,得到首屏页面,再将首屏页面进行绘制处理,以使首页页面在屏幕中显示。需要说明的是,由于解析目标页面程序和排版处理可以在同一个线程中,因此可以不必等待解析目标页面程序和拉取资源文件暂停后,再进行排版处理,而可以是解析了部分目标页面程序后就进行排版,例如,可以是解析了10个token(片段)就对已经解析的token和已经拉取的资源文件进行排版处理(但此时解析数据量还没有满足首屏数据量条件),也就是说解析和排版是交错进行的。

上述可知,步骤s303-步骤s305和步骤s306-步骤s308对应两种情况,若目标页面程序中的头部中包括首屏标记辅助标签,就执行步骤s303-步骤s305,即是当解析到首屏标签时停止解析,进而执行排版和绘制;若目标页面程序中的头部中不包括首屏标记辅助标签,就执行步骤s306-步骤s308,即是当解析数据量满足首屏数据量条件时停止解析,进而执行排版和绘制。前述两种方式,都是为了快速显示首屏页面,加快页面响应用户的速度,降低用户的等待时间,进而提高网页的访问效率。

本发明实施例通过当检测到浏览器对应的启动指令时,根据启动指令获取高频资源文件记录表;高频资源文件记录表包括历史页面中资源文件的访问频率大于频率阈值的资源文件对应的路径信息;根据高频资源文件记录表,从服务器拉取资源文件,并将拉取的资源文件存储于目标缓存中;目标缓存中包括高频资源文件记录表对应的所有资源文件;当接收到页面获取请求,且目标缓存包括页面获取请求所请求的资源文件时,从目标缓存中读取页面获取请求所请求的资源文件,作为目标资源文件,并根据目标资源文件显示页面获取请求所请求的目标页面。上述可知,在浏览器启动时,就将高频访问的资源文件提前拉取至目标缓存中,当接收到页面获取请求时,若该请求所涉及的资源文件存在于缓存中,直接在缓存中拉取资源文件而不必通过服务器拉取资源文件。由于预拉取的资源文件是高频访问的资源文件,因此页面获取请求所涉及的资源文件存在于缓存中的概率会大大提高,即在缓存中就可以直接获取到资源文件进行显示,而不需和服务器频繁交互,可以降低页面响应耗时,提高页面显示的流畅性,进而提高页面的访问效率。

请一并参见图5a,是本发明实施例提供的另一种页面处理方法的流程示意图。上述页面处理方法可以包括:

步骤s401,根据浏览器页面访问行为,生成页面访问历史记录。

具体的,用户通过浏览器浏览网页(页面),根据用户访问过的页面,生成页面访问历史记录,该页面访问历史记录中记录了历史页面(已经访问过的页面)的路径信息、页面类型、访问时间戳、与页面对应服务器名称等,其中每个页面中包括多个资源文件,资源文件可以是图片资源文件、css资源文件、js资源文件、多媒体资源文件等。

步骤s402,根据页面访问历史记录,对高频资源文件记录表进行更新。

具体的,将具有最大访问时间戳的页面作为辅助页面,提取该辅助页面的访问时间戳作为结束时间戳。可以知道,结束时间戳和页面访问历史记录中所记录的最大时间戳相等。由结束时间戳回溯至起始时间戳,其中起始时间戳和结束时间戳时间的时长等于预设的统计预设时长,将在页面访问历史记录中所记录的所有历史页面中,属于结束时间戳和起始时间戳之间的历史页面,作为待确定页面,当然待确定页面也包括辅助页面。统计各待确定页面中关键资源文件的访问频率,将频率大于预设的频率阈值的关键资源文件对应的路径信息,添加至高频资源文件记录表中;相对地,将频率小于或等于预设的频率阈值的关键资源文件对应的路径信息,从高频资源文件记录表中删除。更新高频资源文件记录表可以是每次访问完浏览器后一并更新,也可以是只要通过浏览器访问了页面就立即执行更新。

步骤s403,获取浏览器对应的启动指令和高频资源文件记录表。

具体的,用户点击浏览器对应的图标,生成浏览器对应的启动指令,同时,浏览器主动生成静态页面加载请求,该静态页面加载请求用于请求加载预设的非可视化的静态页面。将生成的静态页面加载请求封装在启动指令中,并根据封装后的启动指令中的静态页面加载请求获取高频资源文件记录表,以及根据封装后的启动指令中的静态页面加载请求,加载对应的静态页面,该静态页面为非可视化的静态页面。

步骤s404,拉取资源文件,并存储于目标缓存中。

具体的,在加载静态页面时,触发serviceworker拉取静态页面中所涉及的资源文件,以及根据高频资源文件记录表中所记录的路径信息,从服务器拉取资源文件,将拉取的资源文件存储在目标缓存中,使得目标缓存中包括高频资源文件记录表中的所有的路径信息对应的资源文件,且所有资源文件都是未过期的资源文件。检测资源文件是否过期的具体过程可以参见图2对应实施例中的步骤102。基于serviceworker拉取资源文件的具体过程可以参见图3对应实施例中的步骤203。

步骤s405,接收页面访问请求,获取目标页面程序。

具体的,用户点击浏览器中各页面对应的图标或者在浏览器中输入网址,用于生成页面访问请求,页面访问请求所请求访问的页面称为目标页面,移动终端向服务器发送该页面访问请求,服务器返回目标页面对应html文本内容,该html文本内容称为目标页面程序。

步骤s406,检测目标页面程序中是否存在首屏标记辅助标签。

检测目标页面程序中的头部是否存在首屏标记辅助标签,若目标页面程序中的头部存在首屏标记辅助标签,则执行步骤s407,若目标页面程序中的头部不存在首屏标记辅助标签,则执行步骤s408。

步骤s407,根据首屏标记辅助标签,解析目标页面程序,读取目标缓存中的资源文件。

具体的,请参见图5b,是本发明实施例提供的一种显示首屏页面的流程示意图。若目标页面程序中的头部存在首屏标记辅助标签,根据首屏标记辅助标签对目标页面程序中的token(程序片段)按照从上到下的顺序依次解析,一个程序片段可以是一个div对,即是一个<div>和</div>之间的程序为一个程序片段(token),在解析token时,可以得到目标页面程序中待拉取资源文件的路径信息,称为解析路径信息,若该解析路径信息在目标缓存中,那么直接在目标缓存中读取解析路径信息对应的资源文件,得到目标资源文件。解析目标页面程序和从目标缓存中读取资源文件是在两个线程中分别完成的,若读取的资源文件是关键资源文件,那么解析目标页面程序所在的线程就会被挂起,即是暂停运行该线程,待关键资源文件从目标缓存中读取完毕后,再启动解析目标页面程序的线程。换句话说,解析目标页面程序和读取资源文件这两个过程,在读取非关键资源文件时是并行处理,在读取关键资源文件时是串行处理。当解析页面程序,且解析到首屏标签时,首屏标签可以表示为:<first-screen/>,停止解析程序也停止读取资源文件(既停止从目标缓存中读取资源文件也停止从服务器拉取并读取资源文件),对已经解析的目标页面程序和已经读取的目标资源文件,进行排版处理,得到首屏页面,再将首屏页面进行绘制处理,以将首屏页面显示在屏幕上。显示了首屏页面后,继续解析目标页面程序中未解析的程序和未读取的资源文件。

步骤s408,解析目标页面程序,读取目标缓存中的资源文件。

具体的,请参见图5c,是本发明实施例提供的另一种显示首屏页面的流程示意图。若目标页面程序中的头部不存在首屏标记辅助标签,则直接对目标页面程序中的token(程序片段)按照从上到下的顺序依次解析,在解析token时,可以得到目标页面程序中待拉取资源文件的路径信息,称为解析路径信息,若该解析路径信息在目标缓存中,那么直接在目标缓存中读取解析路径信息对应的资源文件,得到目标资源文件。在解析目标页面程序信息和读取目标缓存中的资源文件时,统计解析耗时或者解析token的数据量,若解析耗时没有超过预设耗时且解析的token数量没有超过数量阈值,就继续解析下一个token。若解析耗时超过预设耗时或者解析的token数量超过数量阈值,就停止解析程序也停止读取资源文件(既停止从目标缓存中读取资源文件也停止从服务器拉取并读取资源文件),对已经解析的目标页面程序和已经读取的目标资源文件,进行排版处理,得到首屏页面,再将首屏页面进行绘制处理,以将首屏页面显示在屏幕上。显示了首屏页面后,继续解析目标页面程序中未解析的程序和未读取的资源文件。

本发明实施例通过当检测到浏览器对应的启动指令时,根据启动指令获取高频资源文件记录表;高频资源文件记录表包括历史页面中资源文件的访问频率大于频率阈值的资源文件对应的路径信息;根据高频资源文件记录表,从服务器拉取资源文件,并将拉取的资源文件存储于目标缓存中;目标缓存中包括高频资源文件记录表对应的所有资源文件;当接收到页面获取请求,且目标缓存包括页面获取请求所请求的资源文件时,从目标缓存中读取页面获取请求所请求的资源文件,作为目标资源文件,并根据目标资源文件显示页面获取请求所请求的目标页面。上述可知,在浏览器启动时,就将高频访问的资源文件提前拉取至目标缓存中,当接收到页面获取请求时,若该请求所涉及的资源文件存在于缓存中,直接在缓存中拉取资源文件而不必通过服务器拉取资源文件。由于预拉取的资源文件是高频访问的资源文件,因此页面获取请求所涉及的资源文件存在于缓存中的概率会大大提高,即在缓存中就可以直接获取到资源文件进行显示,而不需和服务器频繁交互,可以降低页面响应耗时,提高页面显示的流畅性,进而提高页面的访问效率。

进一步的,请参见图6,是本发明实施例提供的一种页面处理装置的结构示意图。如图6所示,页面处理装置1可以包括:获取模块11、拉取模块12、显示模块13;

获取模块11,用于当检测到浏览器对应的启动指令时,根据所述启动指令获取高频资源文件记录表;所述高频资源文件记录表包括历史页面中资源文件的访问频率大于频率阈值的资源文件对应的路径信息;

具体的,用户点击浏览器图标,获取模块11生成浏览器对应的启动指令,同时,获取模块11主动生成静态页面加载请求,该静态页面加载请求用于请求加载预设的非可视化的静态页面。将生成的静态页面加载请求封装在启动指令中,并根据封装后的启动指令中的静态页面加载请求获取高频资源文件记录表(如图1b所对应实施例中的高频资源文件记录表10e),以及根据封装后的启动指令中的静态页面加载请求,加载对应的静态页面,该静态页面为非可视化的静态页面,换句话说,打开浏览器时,获取模块11就会主动生成静态页面加载请求,该请求可以触发浏览器获取高频资源文件记录表、以及触发浏览器加载非可视化的静态页面。可以知道,高频资源文件记录表是提前存储在移动终端中的,且该高频资源文件记录表中记录的是历史页面中访问频率大于预设的频率阈值的资源文件对应的路径信息,历史页面是通过浏览器已经访问过的页面,页面中包括多个资源文件,例如,图片资源文件、css资源文件、js资源文件、多媒体资源文件等。路径信息是对应资源文件在互联网中的位置信息,每个资源文件都对应一个唯一的路径信息,路径信息可以是url。

拉取模块12,用于根据所述高频资源文件记录表,从服务器拉取资源文件,并将拉取的资源文件存储于目标缓存中;所述目标缓存中包括所述高频资源文件记录表对应的所有资源文件;

具体的,在加载静态页面时,拉取模块12拉取静态页面中所涉及的资源文件,以及根据高频资源文件记录表中所记录的路径信息,从服务器中拉取高频资源文件记录表中记录的路径信息所对应的资源文件。拉取模块12将从服务器拉取的资源文件存储在浏览器对应的缓存中,其中浏览器对应的缓存称为目标缓存,拉取资源文件后的目标缓存中就包括高频资源文件记录表中记录的所有资源文件。需要说明的是,拉取模块12拉取资源文件时,可以从服务器拉取高频资源文件记录表中所有路径信息对应的资源文件,也可以首先检测目标缓存中未过期的资源文件对应的路径信息,然后将高频资源文件记录表和检测出来的未过期的资源文件对应的路径信息进行比对,拉取高频资源文件记录表中存在但目标缓存中不存在的路径信息对应的资源文件,和拉取高频资源文件记录表中存在且缓存中也存在但已经过期的资源文件,目的就是使得拉取资源文件后的目标缓存中包括高频资源文件记录表对应的所有资源文件,且上述所有资源文件都是未过期的资源文件。目标缓存是用于存储历史网页中的资源文件,历史网页是已经访问过的网页。

显示模块13,用于当接收到页面获取请求,且所述目标缓存包括所述页面获取请求所请求的资源文件时,从所述目标缓存中读取所述页面获取请求所请求的资源文件,作为目标资源文件,并根据所述目标资源文件显示所述页面获取请求所请求的目标页面。

具体的,用户通过浏览器界面输入网址,或者点击浏览器界面中各网页对应图标,显示模块13生成页面获取请求(此处的页面获取请求是根据用户所选择的网址确定的,而不同于前述中的静态页面加载请求是获取模块11主动生成的)。显示模块13向服务器发送该页面获取请求,服务器响应后,向移动终端返回该页面获取请求所请求页面的html文本内容,称为目标页面程序。显示模块13按照从上至下的顺序解析该目标页面程序,可以得到目标页面程序中待拉取资源文件的路径信息,若解析得到的路径信息对应的资源文件存在于目标缓存中,则从目标缓存中直接读取该资源文件,得到目标资源文件,其中若读取的是图片资源文件,可以将该图片作为目标资源文件,若读取的是css资源文件或js资源文件,可以将css资源文件的运行结果或js资源文件的运行结果,作为目标资源文件。若目标页面的尺寸大于屏幕尺寸的,为了减少用户等待时间和加快页面响应时间,可以优先把首屏页面进行绘制上屏,而不必等待整个目标页面程序解析完毕以及目标页面程序涉及的资源文件读取完毕,才对整个目标页面进行绘制上屏,其中首屏页面是可以占满一整块屏幕的页面,目标页面是与目标页面程度对应的页面。

其中,获取模块11、拉取模块12、显示模块13的具体功能实现方式可以参见上述图2对应实施例中的步骤s101-步骤s103,这里不再进行赘述。

请参见图6,拉取模块12可以包括:组合单元121、确定单元122、拉取单元123。

组合单元121,用于将所述目标缓存中未过期的资源文件对应的路径信息组合为有效路径信息集合;

确定单元122,用于将属于所述高频资源文件记录表,且不属于所述有效路径信息集合的路径信息,作为待拉取路径信息;

拉取单元123,用于从所述服务器中拉取所述待拉取路径信息对应的资源文件;

所述确定单元122,还用于将所述待拉取路径信息对应的资源文件存储于所述目标缓存中。

其中,组合单元121、确定单元122、拉取单元123的具体功能实现方式可以参见上述图3对应实施例中的步骤s201-步骤s203,这里不再进行赘述。

请参见图6,拉取单元123可以包括:开启子单元1231、关闭子单元1232。

开启子单元1231,用于注册、安装并激活服务代理进程,读取激活后的代理进程中的脚本程序,根据读取后的脚本程序从所述服务器拉取所述待拉取路径信息对应的资源文件;

关闭子单元1232,用于当所述待拉取路径信息对应的资源文件拉取完成时,关闭所述服务代理进程。

其中,开启子单元1231、关闭子单元1232的具体功能实现方式可以参见上述图3对应实施例中的步骤s203,这里不再进行赘述。

请参见图6,页面处理装置1可以包括:获取模块11、拉取模块12、显示模块13;还可以包括:选取模块14、统计模块15、更新模块16。

选取模块14,用于在页面访问历史记录中,选择具有最大访问时间戳的页面作为辅助页面,将所述辅助页面的访问时间戳作为结束时间戳;

所述选取模块14,还用于根据所述结束时间戳和统计预设时长,确定起始时间戳,在所述页面访问历史记录对应的所有页面中,将所述接收时间戳和所述起始时间戳之间的页面,作为待确定页面;

统计模块15,用于统计各待确定页面中的关键资源文件的访问频率;

更新模块16,用于根据统计出来的关键资源文件的访问频率,对所述高频资源文件记录表进行更新。

其中,选取模块14、统计模块15、更新模块16的具体功能实现方式可以参见上述图2对应实施例中的步骤s103,这里不再进行赘述。

请参见图6,更新模块16可以包括:添加单元161、删除单元162。

添加单元161,用于将访问频率大于所述频率阈值的关键资源文件,作为待添加关键资源文件,若所述待添加关键资源文件对应的路径信息不存在于所述高频资源文件记录表中,则在所述高频资源文件记录表中添加所述待添加关键资源文件对应的路径信息;

删除单元162,用于将访问频率小于或等于所述频率阈值的关键资源文件,作为待删除关键资源文件,若所述待删除关键资源文件对应的路径信息存在于所述高频资源文件记录表中,则在所述高频资源文件记录表中删除所述待删除关键资源文件对应的路径信息。

其中,添加单元161、删除单元162的具体功能实现方式可以参见上述图2对应实施例中的步骤s103,这里不再进行赘述。

请参见图6,显示模块13可以包括:解析单元131、停止单元132、绘制单元133。

解析单元131,用于若目标页面程序中包括首屏标记辅助标签,则根据所述首屏标记辅助标签对所述目标页面程序进行解析得到解析路径信息,并在所述目标缓存中读取与所述解析路径信息对应的资源文件,作为目标资源文件;所述目标页面程序是根据所述页面获取请求从所述服务器获取到的页面程序;

停止单元132,用于当解析到首屏标签时,停止解析所述目标页面程序,并停止从所述目标缓存中读取资源文件;

绘制单元133,用于将解析后的目标页面程序和所述目标资源文件进行排版处理,得到首屏页面,并将所述首屏页面进行绘制处理,以显示所述首屏页面。

其中,解析单元131、停止单元132、绘制单元133的具体功能实现方式可以参见上述图4对应实施例中的步骤s303-步骤s305,这里不再进行赘述。

请再参见图6,显示模块13可以包括:解析单元131、停止单元132、绘制单元133,还可以包括:统计单元134。

所述解析单元131,还用于若所述目标页面程序中不包括所述首屏标记辅助标签,则对所述目标页面程序进行解析得到解析路径信息,并在所述目标缓存中读取与所述解析路径信息对应的资源文件,作为目标资源文件;

统计单元134,用于在解析所述目标页面程序和读取资源文件时,统计解析数据量,当所述解析数据量满足首屏数据量条件时,停止解析所述目标页面程序,并停止从所述目标缓存中读取资源文件;

绘制单元133,还用于将解析后的目标页面程序和所述目标资源文件进行排版处理,得到首屏页面,并将所述首屏页面进行绘制处理,以显示所述首屏页面。

其中,解析单元131、统计单元134、绘制单元133的具体功能实现方式可以参见上述图4对应实施例中的步骤s306-步骤s308,这里不再进行赘述。

请再参见图6,获取模块11可以包括:生成单元111、封装单元112、加载单元113。

生成单元111,用于当检测到浏览器对应的启动指令时,生成静态页面加载请求;

封装单元112,用于将所述静态页面加载请求封装在所述启动指令中;

加载单元113,用于根据封装后的启动指令中的静态页面加载请求,获取所述高频资源文件记录表,并加载非可视化的静态页面。

其中,生成单元111、封装单元112、加载单元113的具体功能实现方式可以参见上述图2对应实施例中的步骤s102,这里不再进行赘述。

本发明实施例通过当检测到浏览器对应的启动指令时,根据启动指令获取高频资源文件记录表;高频资源文件记录表包括历史页面中资源文件的访问频率大于频率阈值的资源文件对应的路径信息;根据高频资源文件记录表,从服务器拉取资源文件,并将拉取的资源文件存储于目标缓存中;目标缓存中包括高频资源文件记录表对应的所有资源文件;当接收到页面获取请求,且目标缓存包括页面获取请求所请求的资源文件时,从目标缓存中读取页面获取请求所请求的资源文件,作为目标资源文件,并根据目标资源文件显示页面获取请求所请求的目标页面。上述可知,在浏览器启动时,就将高频访问的资源文件提前拉取至目标缓存中,当接收到页面获取请求时,若该请求所涉及的资源文件存在于缓存中,直接在缓存中拉取资源文件而不必通过服务器拉取资源文件。由于预拉取的资源文件是高频访问的资源文件,因此页面获取请求所涉及的资源文件存在于缓存中的概率会大大提高,即在缓存中就可以直接获取到资源文件进行显示,而不需和服务器频繁交互,可以降低页面响应耗时,提高页面显示的流畅性,进而提高页面的访问效率。

进一步地,请参见图7,是本发明实施例提供的一种电子设备的结构示意图。如图7所示,上述图7中的页面处理装置1可以应用于所述电子设备1000,所述电子设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,所述电子设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(display)、键盘(keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1005可以是高速ram存储器,也可以是非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图7所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。

在图7所示的电子设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:

当检测到浏览器对应的启动指令时,根据所述启动指令获取高频资源文件记录表;所述高频资源文件记录表包括历史页面中资源文件的访问频率大于频率阈值的资源文件对应的路径信息;

根据所述高频资源文件记录表,从服务器拉取资源文件,并将拉取的资源文件存储于目标缓存中;所述目标缓存中包括所述高频资源文件记录表对应的所有资源文件;

当接收到页面获取请求,且所述目标缓存包括所述页面获取请求所请求的资源文件时,从所述目标缓存中读取所述页面获取请求所请求的资源文件,作为目标资源文件,并根据所述目标资源文件显示所述页面获取请求所请求的目标页面。

在一个实施例中,所述处理器1001在执行根据所述高频资源文件记录表,从服务器拉取资源文件,并将拉取的资源文件存储于目标缓存中时,具体执行以下步骤:

将所述目标缓存中未过期的资源文件对应的路径信息组合为有效路径信息集合;

将属于所述高频资源文件记录表,且不属于所述有效路径信息集合的路径信息,作为待拉取路径信息;

从所述服务器中拉取所述待拉取路径信息对应的资源文件,将所述待拉取路径信息对应的资源文件存储于所述目标缓存中。

在一个实施例中,所述处理器1001在执行从所述服务器中拉取所述待拉取路径信息对应的资源文件时,具体执行以下步骤:

注册、安装并激活服务代理进程,读取激活后的代理进程中的脚本程序,根据读取后的脚本程序从所述服务器拉取所述待拉取路径信息对应的资源文件;

当所述待拉取路径信息对应的资源文件拉取完成时,关闭所述服务代理进程。

在一个实施例中,所述资源文件包括:关键资源文件;所述关键资源文件是指拉取资源文件的时间点与解析页面程序的时间点不重合的资源文件;

所述处理器1001还执行以下步骤:

在页面访问历史记录中,选择具有最大访问时间戳的页面作为辅助页面,将所述辅助页面的访问时间戳作为结束时间戳;

根据所述结束时间戳和统计预设时长,确定起始时间戳,在所述页面访问历史记录对应的所有页面中,将所述接收时间戳和所述起始时间戳之间的页面,作为待确定页面;

统计各待确定页面中的关键资源文件的访问频率,根据统计出来的关键资源文件的访问频率,对所述高频资源文件记录表进行更新。

在一个实施例中,所述处理器1001在执行根据统计出来的关键资源文件的访问频率,对所述高频资源文件记录表进行更新时,具体执行以下步骤:

将访问频率大于所述频率阈值的关键资源文件,作为待添加关键资源文件,若所述待添加关键资源文件对应的路径信息不存在于所述高频资源文件记录表中,则在所述高频资源文件记录表中添加所述待添加关键资源文件对应的路径信息;

将访问频率小于或等于所述频率阈值的关键资源文件,作为待删除关键资源文件,若所述待删除关键资源文件对应的路径信息存在于所述高频资源文件记录表中,则在所述高频资源文件记录表中删除所述待删除关键资源文件对应的路径信息。

在一个实施例中,目标页面包括首屏页面;

所述处理器1001在执行从所述目标缓存中读取所述页面获取请求所请求的资源文件,作为目标资源文件,并根据所述目标资源文件显示所述页面获取请求所请求的目标页面时,具体执行以下步骤:

若目标页面程序中包括首屏标记辅助标签,则根据所述首屏标记辅助标签对所述目标页面程序进行解析得到解析路径信息,并在所述目标缓存中读取与所述解析路径信息对应的资源文件,作为目标资源文件;所述目标页面程序是根据所述页面获取请求从所述服务器获取到的页面程序;

当解析到首屏标签时,停止解析所述目标页面程序,并停止从所述目标缓存中读取资源文件;

将解析后的目标页面程序和所述目标资源文件进行排版处理,得到首屏页面,并将所述首屏页面进行绘制处理,以显示所述首屏页面。

在一个实施例中,所述处理器1001还执行以下步骤:

若所述目标页面程序中不包括所述首屏标记辅助标签,则对所述目标页面程序进行解析得到解析路径信息,并在所述目标缓存中读取与所述解析路径信息对应的资源文件,作为目标资源文件;

在解析所述目标页面程序和读取资源文件时,统计解析数据量,当所述解析数据量满足首屏数据量条件时,停止解析所述目标页面程序,并停止从所述目标缓存中读取资源文件;

将解析后的目标页面程序和所述目标资源文件进行排版处理,得到首屏页面,并将所述首屏页面进行绘制处理,以显示所述首屏页面。

在一个实施例中,所述处理器1001在执行当检测到浏览器对应的启动指令时,根据所述启动指令获取高频资源文件记录表时,具体执行以下步骤:

当检测到浏览器对应的启动指令时,生成静态页面加载请求;

将所述静态页面加载请求封装在所述启动指令中;

根据封装后的启动指令中的静态页面加载请求,获取所述高频资源文件记录表,并加载非可视化的静态页面。

本发明实施例通过当检测到浏览器对应的启动指令时,根据启动指令获取高频资源文件记录表;高频资源文件记录表包括历史页面中资源文件的访问频率大于频率阈值的资源文件对应的路径信息;根据高频资源文件记录表,从服务器拉取资源文件,并将拉取的资源文件存储于目标缓存中;目标缓存中包括高频资源文件记录表对应的所有资源文件;当接收到页面获取请求,且目标缓存包括页面获取请求所请求的资源文件时,从目标缓存中读取页面获取请求所请求的资源文件,作为目标资源文件,并根据目标资源文件显示页面获取请求所请求的目标页面。上述可知,在浏览器启动时,就将高频访问的资源文件提前拉取至目标缓存中,当接收到页面获取请求时,若该请求所涉及的资源文件存在于缓存中,直接在缓存中拉取资源文件而不必通过服务器拉取资源文件。由于预拉取的资源文件是高频访问的资源文件,因此页面获取请求所涉及的资源文件存在于缓存中的概率会大大提高,即在缓存中就可以直接获取到资源文件进行显示,而不需和服务器频繁交互,可以降低页面响应耗时,提高页面显示的流畅性,进而提高页面的访问效率。

应当理解,本发明实施例中所描述的电子设备1000可执行前文图2到图5c所对应实施例中对所述页面处理方法的描述,也可执行前文图6所对应实施例中对所述页面处理装置1的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。

此外,这里需要指出的是:本发明实施例还提供了一种计算机存储介质,且所述计算机存储介质中存储有前文提及的页面处理装置1所执行的计算机程序,且所述计算机程序包括程序指令,当所述处理器执行所述程序指令时,能够执行前文图2到图5c所对应实施例中对所述页面处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本发明所涉及的计算机存储介质实施例中未披露的技术细节,请参照本发明方法实施例的描述。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。

以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1