首页> 中国专利> 一种基于云-端协同的移动浏览器资源加载优化方法

一种基于云-端协同的移动浏览器资源加载优化方法

摘要

本发明公开了一种基于云-端协同的移动浏览器资源加载优化方法。本方法为:1)在用户的手机端建立一代理服务器,在该用户的个人云上搭建一云服务器;2)手机端代理服务器将接收并解析浏览器的URL请求,如果手机端代理服务器已缓存该URL请求对应的资源,或者通过URL匹配算法计算出存在对应的资源,则直接将该资源返回给浏览器;否则将其发送给云服务器;3)云服务器检查是否已缓存该URL请求对应的资源,如果已缓存则将该资源返回给代理服务器;否则向该URL请求对应的目标网站进行资源请求并将结果返回给手机端代理服务器;4)该手机端代理服务器将收到的返回结果依照HTTP响应的结构发回浏览器。本发明大大提高了加载速度。

著录项

  • 公开/公告号CN105610909A

    专利类型发明专利

  • 公开/公告日2016-05-25

    原文格式PDF

  • 申请/专利权人 北京大学;

    申请/专利号CN201510964171.0

  • 申请日2015-12-21

  • 分类号H04L29/08(20060101);

  • 代理机构北京君尚知识产权代理事务所(普通合伙);

  • 代理人司立彬

  • 地址 100871 北京市海淀区颐和园路5号

  • 入库时间 2023-12-18 15:33:46

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-01-18

    授权

    授权

  • 2016-06-22

    实质审查的生效 IPC(主分类):H04L29/08 申请日:20151221

    实质审查的生效

  • 2016-05-25

    公开

    公开

说明书

技术领域

本发明是一种基于云-端协同的移动浏览器资源加载优化方法,属于软件技术领 域。

背景技术

根据中国互联网络信息中心于2015年1月发布的《第35次中国互联网络发展状况 统计报告》,截至2014年12月,我国手机网民规模达5.57亿,网民中使用手机上网的人群占 比已达到85.8%。连续几年来,手机网民规模保持稳定增长,手机也早已成为第一大上网终 端。

越来越多的人们正在利用手机或者平板电脑来通过Wi-Fi或3G网络上网,随之而 来的,Web浏览器成为了移动设备上最常用的应用之一。据研究表明,浏览器占据了移动设 备63%的显示时间。但是,现有移动浏览器的用户体验却远不尽如人意。资源加载是影响浏 览器性能重要因素之一,有实验表明,网页加载65%的时间都消耗在资源加载上。由于移动 设备的网络状况通常并不理想,尤其是可能出现网络拥挤或是用户正在移动的状况,这个 问题就变得更为严重了。此外,下载资源的过程本身会消耗许多电量,而电量恰恰是移动设 备上最为稀缺的资源。

为了加速Web资源加载,缓存机制被广泛运用。通过缓存的方法,可以为用户减少 资源下载量,从而提高Web浏览性能。这种缓存机制给移动设备带来的好处更大,因为在移 动设备上,该机制不仅可以减少网页加载时间,还可以减少网络流量和电量消耗。然而在实 际运用中,缓存却常常并未被很好地配置与实现。有研究表明,缓存机制的理论性能与实际 性能之间有很大差距因此当前有这样一个需求,在不改变现有浏览器与服务器实现的前提 下,对现有的缓存机制进行优化,提高缓存的利用效果。希望可以以此进一步提高移动设备 用户在浏览网页时的体验,减少用户的流量与电量消耗。

发明内容

针对现有技术中存在的问题,本发明的目的在于提供一种基于云-端协同的移动 浏览器资源加载优化方法。本发明是在不改变现有用户浏览习惯与Web应用缓存原有配置 的前提下,最大程度减少Web资源的传输流量并提高加载速度。其核心思想是:在原有的Web 应用架构的基础上,在手机端搭建代理服务器,并借助云服务器预取Web资源,即将原有的 从浏览器到服务器的两层架构改变为四层架构。

该系统在手机端搭建HTTP代理服务器,并将手机端浏览器的HTTP代理配置为该手 机端代理服务器;在个人云上为每个手机用户搭建云服务器。手机端代理服务器接收手机 端浏览器的请求,并向手机端浏览器返回资源响应。手机端代理服务器并不直接向互联网 请求资源,而向在个人云上搭建的云服务器请求资源,由云服务器从互联网上下载资源,并 有选择地向手机端进行推送。在此过程中,通过URL匹配算法、资源校验码比对、数据压缩与 网站预取等手段达到最大程度减少传输流量并提高加载速度的目的。

本发明的技术方案为:

一种云-端协同的移动浏览器缓存优化方法,具体步骤为:

1)在手机端建立代理服务器,该代理服务器可以接收浏览器的请求,并解析请求, 对于代理服务器已缓存的资源,或者通过URL匹配算法计算出存在对应的资源,可以直接将 资源返回给浏览器;对于本地未存储的资源,向云端服务器进行资源的查询。

2)在云端为每个手机用户建立一个云服务器,该云服务器可以进行Internet连 接。云服务器可以预取网站的资源,并接收手机端代理服务器的资源请求。如果资源已经被 缓存在云服务器上,则云服务器直接向手机端代理服务器返回该资源,如果没有,则向目标 网站进行请求并将结果返回。

3)用户在手机端将浏览器的代理配置为手机端的代理服务器。

进一步的,每一个资源都会在云服务器端计算出该文件的校验值,作为标识资源 内容的唯一依据,可以依据该值对缓存资源进行检索。在服务器端将资源传回手机端时,会 先检索该校验值的文件是否已存在于手机端的缓存中,如果已存在,则仅返回该资源的校 验值,手机端代理服务器会根据该校验值提取资源。

进一步的,云端服务器会定时预取用户可能访问的网站,提前建立网站的缓存以 供用户访问。

进一步的,所有服务器到手机端的传输均经过压缩,以节省未经压缩资源的传输 流量。

使用本发明的框架,资源访问主要包含三个步骤:

1.预取目标资源:云服务器端会定期对用户可能访问的资源进行预取。

2.接收浏览器请求并检查手机端缓存:手机端代理服务器接收浏览器请求,如果 手机端没有缓存资源,则向云端服务器请求资源;如果该缓存存在或可以根据URL匹配算法 找到相应资源,则直接向浏览器返回资源。

3.检查云服务器端缓存:如果云服务器端没有缓存资源,则向原网站请求,然后将 资源传回手机端代理服务器。手机端代理服务器再将结果依照HTTP响应的结构发回浏览 器。

上述步骤的具体技术方案如下:

1.预取目标资源:服务器端会对用户可能访问的资源进行提前预取,具体的资源 列表会根据用户的访问习惯产生。服务器会将预取好的资源存储,同时计算好校验值,并将 条目整理到数据库中。

2.代理服务器接收浏览器请求并检查手机端缓存:本发明可以与浏览器的原有缓 存同时使用,浏览器会将原本需要向远程服务器请求的资源发到手机端代理服务器上。手 机端的代理服务器会接收请求并根据HTTP协议对请求进行解析。之后在本地检测资源是否 已被手机端代理服务器缓存。如果缓存不存在,手机会将解析到的资源URL通过URL匹配算 法在缓存列表中进行查询,如果查询到相关资源,则返回资源,否则将资源请求通过HTTP2 或SPDY协议发送给服务器。

URL匹配算法包含两部分,URL模式识别与URL匹配查询,其中模式识别在云服务器 端进行,匹配查询在手机端进行。

云服务器会对同一网站定时进行的抓取与解析,由此可以得到URL和资源的对应 列表。同一资源对应的URL可能会有多个。本算法的目的在于根据URL检索到潜在对应的资 源,因此需要建立每个资源对应的URL模式。算法首先对URL根据常见URL分隔符进行切分, 对于同一资源,计算得出URL每一部分发生变化时,该资源保持不变的可能性,这个值我们 称为段落关键系数,计算方法为:

对于所有资源,该值永远介于0至1之间。

当服务器将资源与其URL发回手机端时,该URL中所有段落的关键系数都将被传 回。

当手机端代理服务接收到一个URL的请求时,会首先进行匹配查询,将该URL与相 应网站的所有URL记录进行相似度的对比(先根据该URL找到相应网站,然后将该网站的所 有URL记录进行对比),相似度的计算方法如下:

其中αi表示检索中的待请求URL的段落是否与目标URL的段落匹配,如果不匹配则 为1,匹配则为0。特别地,当待请求URL与目标URL完全相同时,该相似度结果为1。当相似度 结果大于0.5时,我们认为目标URL的资源就是待请求URL的资源,并取最大相似度的结果作 为待请求URL的资源,如果所有资源的相似度均不足0.5,则认为匹配失败。缓存中不存在该 资源,需要发往服务器进一步确认。

3.检查服务器端缓存:服务器端接收到手机端的资源请求后,会根据相关算法计 算出该URL对应的数据库条目,或者URL并不在数据库中,即资源并未缓存。如果资源没有被 缓存,服务器会向原网站请求该资源,得到资源后,会将资源的校验值计算出并将条目存储 到数据库中。

4.检查资源是否在手机端已存在并向浏览器发送响应:在服务器端准备好资源 后,会依照资源的校验码在服务器端存储的手机资源列表中检索资源是否存在,如果资源 存在,则不会返回数据体,只会返回资源对应的校验值,手机端会根据此校验值从本地列表 中提取出相应资源。如果资源不存在,则服务器端会将资源压缩并通过HTTP2或SPDY协议将 内容返回给手机端。手机端接收到数据后会进行解压缩,并按照HTTP响应的标准得到该资 源的响应,最终将相应发回给浏览器。

与现有技术相比,本发明的积极效果为:

本发明通过四层架构进行Web浏览的优化,可以减少传输流量并提高加载速度。实 验表明,使用该框架,在用户第一次访问网页时,平均可以节省流量17%,提高加载速度 29%;再次访问同一网页,平均可以为第二次访问节省流量66%,提高加载速度9%。

附图说明

附图为本发明的系统架构图。

具体实施方式

本节以某新闻网站为例,给出用户利用本发明提供的框架先后两次访问该新闻网 站的后台操作过程。

云服务器端会定期预取该网站的该资源,当用户第一次访问该网站时,浏览器会 先把HTML的请求发送给手机端代理服务器,由于HTML属于最经常更新的资源,对于HTML的 请求,手机端会默认此前的缓存不可用,而向服务器发起询问。代理服务解析出URL后,向云 端的服务器发起询问,由于云端的服务器此前已经预取过该资源,服务器可以根据URL检索 到该资源。此后服务器会在手机端资源列表中检索该资源,由于此前并未访问过此网站,该 资源不存在手机端上,因此服务器会将资源进行压缩,并传回手机端代理服务器。手机端代 理服务器会解析服务器传回的内容,并将其整理为HTTP响应,发回浏览器。浏览器将解析 HTML的内容,并向代理服务发送其余资源的请求。对于剩余的资源,由于此前并未访问过该 网站,缓存中不存在这些资源,通过URL匹配算法也无法计算得出与该资源相似的已缓存资 源,因此手机端代理服务也会向服务器请求这些资源。

在第二次访问该网站时,浏览器会再次把HTML的请求发送给手机端代理,手机端 会将该资源的请求发给云服务器,云服务器在本地检索到该资源后,再根据校验值在手机 缓存列表中检索,如果HTML本身的内容并未改变,该资源的校验值会在手机缓存列表中存 在,该资源本身将不会被返回,否则需要返回整个资源,并在手机端更新该缓存。

对于HTML解析出的某些资源,虽然在手机端不存在该URL的缓存数据,但这种URL 的改变可能是由于网页的动态解析造成的,资源本身并未改变,通过URL匹配算法,可以检 测到这类资源URL的改变从而返回相应的已缓存资源。如果算法判定找不到相关资源,手机 端仍需将该请求发送给服务器进行询问。

当手机端将该资源的请求发送给云服务器端后,若云服务器检索或请求到该资源 之后,发现该资源对应的校验值在手机端的资源列表中已存在,则不会返回该资源本身,而 只会向手机端返回响应头和校验值。手机端会接收到该信息,然后从本地提取出资源本体, 将两者(该响应头和资源本体)按照HTTP相应的结构进行重新组合,并将此内容发给浏览 器。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号