缓存更新方法及装置制造方法及图纸

技术编号:16700726 阅读:34 留言:0更新日期:2017-12-02 13:04
公开了一种缓存更新方法,包括:接收目标页面的加载请求,其中,所述目标页面包括多个页面资源数据;根据预设规则建立所述目标页面的加载请求中多个页面资源数据的索引;若本地存储有所述目标页面的加载请求对应的缓存数据,根据预设规则建立所述缓存数据的索引;当所述多个页面资源数据的索引与所述缓存数据的索引相同时,不需要更新;当所述多个页面资源数据的索引与所述缓存数据的索引不同时,更新所述缓存数据。本发明专利技术可以提高应用程序的加载速度,实现自主更新控制,降低成本。

Caching update method and device

Discloses a cache update method comprises: receiving the target page loading request, wherein the target page includes a plurality of page data resources; according to the preset rules established by the target page loading request multiple pages resource data index; if the local storage cache data of the target page loading request the establishment of the cache data, according to the index of preset rules; when the plurality of page resource data index and the index of the data cache is the same, do not need to update; when the plurality of page resource data index and the index of the data cache and update the data cache. The invention can improve the loading speed of the application, realize the independent update control and reduce the cost.

【技术实现步骤摘要】
缓存更新方法及装置
本专利技术属于电子商务数据
,更具体地,涉及一种缓存更新方法及装置。
技术介绍
在当下的大型APP开发中,因为产品方动态更新的需求面临着iOS系统发版周期的制约,且iOS系统不支持动态更新,故产品方多采用原生代码与HTML内置混合的方式进行APP的生产开发。但因为先天缺陷,导致了APP内嵌的HTML页面或WAP站点,在加载时,流量消耗以及综合体验上始终和原生界面的交互存在较大的差距。现有的标准Http缓存和Html5的本地存储技术localStorage,都可以在断网的情况下,用来为离线应用提供数据。在对现有技术的研究和实践过程中,发现现有技术至少存在以下问题:Html5的本地存储技术localStorage不会自己淘汰和更新缓存数据,而且存储空间有限。标准Http缓存虽然可以通过设置缓存超时时间来自动淘汰缓存,但是时间粒度不好控制,设置过大或过小都不能满足实际需要;虽然可以在请求加上If-Modify-Since头,来得到最新数据,但是每次请求都要进行校验,需要发起网络连接,导致更新效率低。以上两种方案都仅为解决存储问题,不能有效地和后台服务器同步更新数据,无法用较小代价保证缓存数据的正确性。
技术实现思路
本专利技术的目的在于提供一种缓存更新方法及装置。根据本专利技术的一方面,提供一种缓存更新方法,包括:接收目标页面的加载请求,其中,所述目标页面包括多个页面资源数据;根据预设规则建立所述目标页面的加载请求中多个页面资源数据的索引;若本地存储有所述目标页面的加载请求对应的缓存数据,根据预设规则建立所述缓存数据的索引;当所述多个页面资源数据的索引与所述缓存数据的索引相同时,不需要更新;当所述多个页面资源数据的索引与所述缓存数据的索引不同时,更新所述缓存数据。优选地,所述方法还包括:若本地没有存储所述目标页面的加载请求对应的缓存数据,从所述多个页面资源数据对应的后台服务器获取多个页面资源数据,并做本地存储。优选地,更新所述缓存数据包括:根据所述多个页面资源数据的索引与所述缓存数据的索引获取待更新的多个页面资源数据;删除所述缓存数据中与待更新的页面资源数据对应的缓存数据,从所述待更新的多个页面资源数据对应的后台服务器获取待更新的缓存数据,更新所述缓存数据。优选地,所述预设规则至少包括域名、类型、命名、大小、创建时间中的一种。优选地,所述缓存数据本地存储的方式为SQLite存储和沙箱文件存储。优选地,上述方法还包括:在本地存储所述缓存数据时进行加密,在读取所述缓存数据时进行解密。优选地,加密方式为DES加密,解密方式为DES解密。根据本专利技术的另一方面,提供一种缓存更新装置,包括:请求接收模块,用于接收目标页面的加载请求,其中,所述目标页面包括多个页面资源数据;索引模块,用于根据预设规则建立所述目标页面的加载请求中多个页面资源数据的索引;判断模块,用于若本地存储有所述目标页面的加载请求对应的缓存数据,根据预设规则建立所述缓存数据的索引;更新模块,用于当所述多个页面资源数据的索引与所述缓存数据的索引相同时,不需要更新;当所述多个页面资源数据的索引与所述缓存数据的索引不同时,更新所述缓存数据。优选地,所述装置还包括:缓存模块,用于若本地没有存储所述目标页面的加载请求对应的缓存数据,从所述多个页面资源数据对应的后台服务器获取多个页面资源数据,并做本地存储。优选地,所述更新模块包括:比较单元,根据所述多个页面资源数据的索引与所述缓存数据的索引获取待更新的多个页面资源数据;删除单元,用于删除所述缓存数据中与待更新的页面资源数据对应的缓存数据,缓存单元,用于从所述待更新的多个页面资源数据对应的后台服务器获取待更新的缓存数据,更新单元,用于更新所述缓存数据。优选地,所述预设规则至少包括域名、类型、命名、大小、创建时间中的一种。优选地,所述缓存数据本地存储的方式为SQLite存储和沙箱文件存储。优选地,所述装置还包括:加解密模块,用于在本地存储所述缓存数据时进行加密,在读取所述缓存数据时进行解密。优选地,加密方式为DES加密,解密方式为DES解密。本专利技术提供的缓存更新方法及装置根据预设规则建立缓存数据的索引表,并根据当前加载请求与缓存数据是否一致来判断是否更新,并且只更新不一致的缓存数据,可以提高应用程序的加载速度,实现自主更新控制,降低成本。附图说明通过以下参照附图对本专利技术实施例的描述,本专利技术的上述以及其他目的、特征和优点将更为清楚,在附图中:图1示出了根据本专利技术实施例的缓存更新方法的流程图;图2示出了根据本专利技术另一实施例的缓存更新方法的流程图;图3示出了根据本专利技术实施例的缓存更新装置的结构示意图。具体实施方式以下将参照附图更详细地描述本专利技术的各种实施例。在各个附图中,相同的元件采用相同或类似的附图标记来表示。为了清楚起见,附图中的各个部分没有按比例绘制。本专利技术可以各种形式呈现,以下将描述其中一些示例。图1示出了根据本专利技术实施例的缓存更新方法的流程图。本实施例主要应用于能够运行Web应用程序的终端,包括智能手机、电子书阅读器、MP3播放器、MP4播放器、个人电脑、笔记本电脑、平板电脑等。如图1所示,所述缓存更新方法包括以下步骤。在步骤S101中,接收目标页面的加载请求,其中,所述目标页面包括多个页面资源数据。在本实施例中,Web应用程序泛指基于B/S架构的应用程序,Web应用程序与Web服务器进行数据交互,Web应用程序可以为浏览器、支持后台下载的电子图书阅读器等。终端根据用户的指令或Web应用程序默认的指令,接收Web应用程序发出的目标页面的加载请求,比如,浏览器发出下载网页内容请求,电子书发出下载图书章节的请求。该目标页面包括多个页面资源数据,如JS资源页面、CSS资源页面、Image资源页面的数据,即视频、照片、音频、文字等等。在步骤S102中,根据预设规则建立所述目标页面的加载请求中多个页面资源数据的索引。在本实施例中,所述预设规则至少包括域名、类型、命名、大小、创建时间中的一种。对于多个页面资源数据按照域名、类型、命名、大小等建立页面加载请求资源的索引表。在步骤S103中,若本地存储有所述目标页面的加载请求对应的缓存数据,根据预设规则建立所述缓存数据的索引。在本实施例中,如果本地存储有该目标页面加载请求对应的缓存数据(Cookie),根据上述的预设规则建立所述缓存数据的索引表。在步骤S104中,当所述多个页面资源数据的索引与所述缓存数据的索引相同时,不需要更新。在步骤S105中,当所述多个页面资源数据的索引与所述缓存数据的索引不同时,更新所述缓存数据。在本实施例中,将加载请求中的页面资源的索引表与本地存储的缓存数据的索引表进行比较,若两者一样,则不需要更新,直接读取本地存储的缓存数据。若两者不一样,更新所述缓存数据。具体地,步骤S105包括:在步骤S1051中,根据所述多个页面资源数据的索引与所述缓存数据的索引获取待更新的多个页面资源数据。在本实施例中,将加载请求中的页面资源的索引表与本地存储的缓存数据的索引表进行比较,得到与本地缓存数据有不同的页面资源数据,即待更新的多个页面资源数据。例如,加载请求中的其中一个图片的大小与本地缓存数据中相应的图片大小不一样,则该图片需要重新下载更新。又例本文档来自技高网...
缓存更新方法及装置

【技术保护点】
一种缓存更新方法,包括:接收目标页面的加载请求,其中,所述目标页面包括多个页面资源数据;根据预设规则建立所述目标页面的加载请求中多个页面资源数据的索引;若本地存储有所述目标页面的加载请求对应的缓存数据,根据预设规则建立所述缓存数据的索引;当所述多个页面资源数据的索引与所述缓存数据的索引相同时,不需要更新;当所述多个页面资源数据的索引与所述缓存数据的索引不同时,更新所述缓存数据。

【技术特征摘要】
1.一种缓存更新方法,包括:接收目标页面的加载请求,其中,所述目标页面包括多个页面资源数据;根据预设规则建立所述目标页面的加载请求中多个页面资源数据的索引;若本地存储有所述目标页面的加载请求对应的缓存数据,根据预设规则建立所述缓存数据的索引;当所述多个页面资源数据的索引与所述缓存数据的索引相同时,不需要更新;当所述多个页面资源数据的索引与所述缓存数据的索引不同时,更新所述缓存数据。2.根据权利要求1所述的方法,其中,还包括:若本地没有存储所述目标页面的加载请求对应的缓存数据,从所述多个页面资源数据对应的后台服务器获取多个页面资源数据,并做本地存储。3.根据权利要求1所述的方法,其中,更新所述缓存数据包括:根据所述多个页面资源数据的索引与所述缓存数据的索引获取待更新的多个页面资源数据;删除所述缓存数据中与待更新的页面资源数据对应的缓存数据,从所述待更新的多个页面资源数据对应的后台服务器获取待更新的缓存数据,更新所述缓存数据。4.根据权利要求1所述的方法,其中,所述预设规则至少包括域名、类型、命名、大小、创建时间中的一种。5.根据权利要求1所述的方法,其中,所述缓存数据本地存储的方式为SQLite存储和沙箱文件存储。6.根据权利要求1所述的方法,其中,还包括:在本地存储所述缓存数据时进行加密,在读取所述缓存数据时进行解密。7.根据权利要求6所述的方法,其中,加密方式为DES加密,解密方式为DES解密。8.一种缓存更新装置,包括:请求接收模块,用于接收目标页面的加载请求,其中,所述目...

【专利技术属性】
技术研发人员:刘建军
申请(专利权)人:北京京东尚科信息技术有限公司北京京东世纪贸易有限公司
类型:发明
国别省市:北京,11

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

1