一种资源缓存方法及装置制造方法及图纸

技术编号:18458709 阅读:20 留言:0更新日期:2018-07-18 12:40
本发明专利技术实施例提供了一种资源缓存方法及装置,该资源缓存方法可以通过宿主应用开启目标应用时,启动所述宿主应用中安装的服务代理,利用所述服务代理从所述目标应用的应用服务器中获取脚本文件;当获取的脚本文件与所述宿主应用中存储的脚本文件不同时,更新所述服务代理;利用更新的服务代理执行所述获取的脚本文件,更新所述宿主应用中所述目标应用的静态缓存资源;从而,避免用户打开目标应用时再从网络中获取页面资源所造成的页面打开时间过长的问题,并且在缓存资源有更新时,只需修改脚本文件,就能够及时获取页面所需的缓存资源,提高页面的加载速度。

A method and device for resource caching

An embodiment of the invention provides a resource cache method and device that can start the installed Service agent in the host application when the host application opens the target application, and uses the service agent to obtain the script files from the application server used by the target, and when the script files are obtained, The scripted file stored in the host application updates the described service agent, uses the updated service agent to execute the obtained script file, updates the static cache resource of the target application described in the host application, and thus avoids the user's access to the page resources from the network when the user opens the target application. When the page opens the problem of long time, and when the cache resource is updated, only the script file is modified, the cache resources needed in the page can be obtained in time, and the speed of the page loading can be improved.

【技术实现步骤摘要】
一种资源缓存方法及装置
本专利技术涉及计算机
,尤其涉及一种资源缓存方法及装置。
技术介绍
随着互联网技术的发展,用户可以通过应用程序随时随地访问互联网,给人们的生活、工作及学习带来了极大便利。目前,应用程序可以有两种模式,一种是客户端/服务器模式,另一种是浏览器/服务器模式;采用后者的应用程序也可以简称为Web应用,用户可以通过浏览器访问Web应用,即用户只需要在自己的终端设备上安装浏览器即可,而不必安装其他软件。然而,在实践中发现,用户在使用Web应用时,常常需要等待较久的时间才能将Web应用的页面加载完毕。
技术实现思路
本专利技术实施例提供了一种资源缓存方法及装置,能够及时获取页面所需的缓存资源,提高页面的加载速度。本专利技术实施例第一方面提供了一种资源缓存方法,包括:通过宿主应用开启目标应用时,启动所述宿主应用中安装的服务代理,利用所述服务代理从所述目标应用的应用服务器中获取脚本文件;当获取的脚本文件与所述宿主应用中存储的脚本文件不同时,更新所述服务代理;利用更新的服务代理执行所述获取的脚本文件,更新所述宿主应用中所述目标应用的静态缓存资源;其中,所述宿主应用是指为所述目标应用提供运行环境的应用。本专利技术实施例第二方面提供了一种资源缓存装置,包括:获取单元,用于在通过宿主应用开启目标应用时,启动所述宿主应用中安装的服务代理,利用所述服务代理从所述目标应用的应用服务器中获取脚本文件;更新单元,用于在当获取的脚本文件与所述宿主应用中存储的脚本文件不同时,更新所述服务代理;所述更新单元,还用于利用更新的服务代理执行所述获取的脚本文件,更新所述宿主应用中所述目标应用的静态缓存资源;其中,所述宿主应用是指为所述目标应用提供运行环境的应用。本专利技术实施例中,终端可以在通过宿主应用开启目标应用时,启动所述宿主应用中安装的服务代理,利用所述服务代理从所述目标应用的应用服务器中获取脚本文件;当获取的脚本文件与所述宿主应用中存储的脚本文件不同时,更新所述服务代理;利用更新的服务代理执行所述获取的脚本文件,从而,可以及时更新所述宿主应用中所述目标应用的静态缓存资源。可见,本专利技术实施例可以避免用户打开目标应用时再从网络中获取页面资源所造成的页面打开时间过长的问题,并且在缓存资源有更新时,只需修改脚本文件,就能够及时获取页面所需的缓存资源,提高页面的加载速度。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例公开的一种资源缓存系统的结构示意图;图2是本专利技术实施例公开的一种资源缓存方法的流程示意图;图3是本专利技术实施例公开的另一种资源缓存方法的流程示意图;图4是本专利技术实施例公开的一种服务代理安装方法的流程示意图;图5是本专利技术实施例公开的另一种服务代理安装方法的流程示意图;图6是本专利技术实施例公开的另一种资源缓存方法的流程示意图;图7是本专利技术实施例公开的一种资源缓存装置的结构示意图;图8是本专利技术实施例公开的另一种资源缓存装置的结构示意图;图9是本专利技术实施例公开的一种终端的结构示意图。具体实施方式本专利技术实施例公开了一种资源缓存方法及装置,能够及时更新目标应用的缓存资源,缩短目标应用打开页面所需的时长。以下进行详细阐述。请参阅图1,图1是本专利技术实施例公开的一种资源缓存系统的结构示意图,如图1所示,该资源缓存系统可以包括终端100和服务器200,其中,终端可以为手机、平板电脑、可穿戴设备等智能设备;终端100可以获取宿主应用的安装包,以安装宿主应用。宿主应用是指其他应用赖以存在的软件环境,或者为其他应用提供运行环境的应用,也可以称为宿主Host,如浏览器、微信、QQ等;目标应用是指可以通过宿主应用开启而不必单独下载安装包进行安装的应用,例如,基于浏览器的Web应用、基于微信的小程序应用等,针对基于微信开发的小程序应用,用户可以通过微信扫描小程序应用的二维码或者搜一下小程序应用的标识即可进入小程序应用中。本专利技术实施例中,服务器200可以包括宿主应用的后台服务器,简称为宿主服务器210,也可以包括目标应用的应用服务器,简称为应用服务器220。宿主服务器210用于向宿主应用下发资源,例如宿主应用的更新包。本专利技术实施例中,服务代理是指运行于宿主应用的后台,在不影响宿主应用的页面展示的情况下处理任务,例如,定时更新、消息通知推送等。本专利技术实施例中,服务代理可以为ServiceWorker,ServiceWorker不需要与宿主应用进行页面交互,在后台就可以执行任务。本专利技术实施例中,目标应用的静态缓存资源可以包括图片、视频或者宿主应用可以识别的超级文本标记语言(HyperTextMarkupLanguage,HTML)、脚本(JavaScript,JS),层叠样式表(CascadingStyleSheets,CSS)等,本专利技术实施例不做限定。下面结合图1所示的资源缓存系统对本专利技术实施例提供的资源缓存方法进行详细阐述。请参阅图2,图2是本专利技术实施例公开的一种资源缓存方法的流程示意图,该资源缓存方法可以包括以下步骤:S101、通过宿主应用开启目标应用时,启动所述宿主应用中安装的服务代理,利用所述服务代理从所述目标应用的应用服务器中获取脚本文件;S102、当获取的脚本文件与所述宿主应用中存储的脚本文件不同时,更新所述服务代理;S103、利用更新的服务代理执行所述获取的脚本文件,更新所述宿主应用中所述目标应用的静态缓存资源;本专利技术实施例中,宿主应用可以安装在终端中,终端通过宿主应用开启目标应用时,启动宿主应用中安装的服务代理,可以为,终端启动服务代理的检查更新线程,例如,ServiceWorker线程,去应用服务器(也可以称为业务服务器)上拉取服务代理脚本,即ServiceWorker脚本,当ServiceWorker脚本与本地(即终端)存储的ServiceWorker脚本有一个字节的不同时,就可以启动更新该ServiceWorker的线程,也可以称为激活服务代理的安装线程,安装该拉取的脚本文件。其中,脚本文件中包括所要拉取的静态缓存资源,从而使得终端可以执行该脚本文件来拉取目标应用的静态缓存资源。而现有的宿主应用存储目标应用的资源缓存方法是通过将静态缓存资源永久缓存到宿主应用中,当网络流量有限、网速较慢或者没有网络的情况下,在打开目标应用的页面时,可以拦截页面请求,去缓存中查看是否有该目标应用的静态缓存资源,若有,则可以直接利用该静态缓存资源来提高首屏速度。在需要更新静态缓存资源时,还需要将更新的静态缓存资源提交到宿主应用的后台服务器,而本专利技术实施例提供的资源缓存方法,使得业务或者目标应用的发布者只需在自己的应用服务器中修改脚本文件,由宿主应用通过服务代理更新脚本文件,自动拉取静态缓存资源,避免将缓存资源还需提交给宿主应用的后台服务器的繁琐操作,大大提高了静态缓存资源更新效率,即能够及时获取页面所需的缓存资源,提高页面的加载速度。请参阅图3,图3是本专利技术实施例公开的另一种资源缓存方法的流程示意图;其中,图3所示的资源缓存方法与图2所示本文档来自技高网...

【技术保护点】
1.一种资源缓存方法,其特征在于,包括:通过宿主应用开启目标应用时,启动所述宿主应用中安装的服务代理,利用所述服务代理从所述目标应用的应用服务器中获取脚本文件;当获取的脚本文件与所述宿主应用中存储的脚本文件不同时,更新所述服务代理;利用更新的服务代理执行所述获取的脚本文件,更新所述宿主应用中所述目标应用的静态缓存资源;其中,所述宿主应用是指为所述目标应用提供运行环境的应用。

【技术特征摘要】
1.一种资源缓存方法,其特征在于,包括:通过宿主应用开启目标应用时,启动所述宿主应用中安装的服务代理,利用所述服务代理从所述目标应用的应用服务器中获取脚本文件;当获取的脚本文件与所述宿主应用中存储的脚本文件不同时,更新所述服务代理;利用更新的服务代理执行所述获取的脚本文件,更新所述宿主应用中所述目标应用的静态缓存资源;其中,所述宿主应用是指为所述目标应用提供运行环境的应用。2.根据权利要求1所述的方法,其特征在于,所述通过宿主应用开启目标应用时,启动所述宿主应用中安装的服务代理之前,所述方法还包括:在宿主应用中安装目标应用的服务代理;利用安装的服务代理执行所述宿主应用中存储的脚本文件,下载所述目标应用的静态缓存资源。3.根据权利要求2所述的方法,其特征在于,所述在宿主应用中安装目标应用的服务代理,包括:当安装宿主应用时,获取所述宿主应用的安装包中内置的目标应用的离线包,所述离线包为预先利用所述宿主应用访问采用了服务代理的应用服务器而生成的;将所述离线包拷贝到所述宿主应用的预设目录下;当所述宿主应用启动时,访问所述预设目录,将所述离线包解压并拷贝到所述宿主应用的内核工作目录中,以触发所述宿主应用安装所述目标应用的服务代理。4.根据权利要求2所述的方法,其特征在于,所述在宿主应用中安装目标应用的服务代理,包括:当启动宿主应用时,获取所述宿主应用的后台服务器中配置的白名单,所述白名单包括采用了服务代理的目标应用的应用服务器网址;启动服务代理安装线程访问所述应用服务器网址,以使所述宿主应用安装所述目标应用的服务代理。5.根据权利要求1至4任一项所述的方法,其特征在于,当所述宿主应用为浏览器时,所述目标应用为Web应用;当所述宿主应用为即时聊天应用时,所述目标应用为基于所述即时聊天应用来开发的应用。6.一种资源缓存装置,其特征在于,包括:获取单元,用于在通...

【专利技术属性】
技术研发人员:凌勇
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东,44

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

1