[发明专利]缓存更新方法及装置在审
申请号: | 201610348779.5 | 申请日: | 2016-05-24 |
公开(公告)号: | CN107423302A | 公开(公告)日: | 2017-12-01 |
发明(设计)人: | 刘建军 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;G06F9/445 |
代理公司: | 北京成创同维知识产权代理有限公司11449 | 代理人: | 蔡纯,张靖琳 |
地址: | 100195 北京市海淀区杏石口路6*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 缓存 更新 方法 装置 | ||
技术领域
本发明属于电子商务数据技术领域,更具体地,涉及一种缓存更新方法及装置。
背景技术
在当下的大型APP开发中,因为产品方动态更新的需求面临着iOS系统发版周期的制约,且iOS系统不支持动态更新,故产品方多采用原生代码与HTML内置混合的方式进行APP的生产开发。但因为先天缺陷,导致了APP内嵌的HTML页面或WAP站点,在加载时,流量消耗以及综合体验上始终和原生界面的交互存在较大的差距。
现有的标准Http缓存和Html5的本地存储技术local Storage,都可以在断网的情况下,用来为离线应用提供数据。
在对现有技术的研究和实践过程中,发现现有技术至少存在以下问题:Html5的本地存储技术local Storage不会自己淘汰和更新缓存数据,而且存储空间有限。标准Http缓存虽然可以通过设置缓存超时时间来自动淘汰缓存,但是时间粒度不好控制,设置过大或过小都不能满足实际需要;虽然可以在请求加上If-Modify-Since头,来得到最新数据,但是每次请求都要进行校验,需要发起网络连接,导致更新效率低。以上两种方案都仅为解决存储问题,不能有效地和后台服务器同步更新数据,无法用较小代价保证缓存数据的正确性。
发明内容
本发明的目的在于提供一种缓存更新方法及装置。
根据本发明的一方面,提供一种缓存更新方法,包括:接收目标页面的加载请求,其中,所述目标页面包括多个页面资源数据;根据预设规则建立所述目标页面的加载请求中多个页面资源数据的索引;若本地存储有所述目标页面的加载请求对应的缓存数据,根据预设规则建立所述缓存数据的索引;当所述多个页面资源数据的索引与所述缓存数据的索引相同时,不需要更新;当所述多个页面资源数据的索引与所述缓存数据的索引不同时,更新所述缓存数据。
优选地,所述方法还包括:若本地没有存储所述目标页面的加载请求对应的缓存数据,从所述多个页面资源数据对应的后台服务器获取多个页面资源数据,并做本地存储。
优选地,更新所述缓存数据包括:根据所述多个页面资源数据的索引与所述缓存数据的索引获取待更新的多个页面资源数据;删除所述缓存数据中与待更新的页面资源数据对应的缓存数据,从所述待更新的多个页面资源数据对应的后台服务器获取待更新的缓存数据,更新所述缓存数据。
优选地,所述预设规则至少包括域名、类型、命名、大小、创建时间中的一种。
优选地,所述缓存数据本地存储的方式为SQLite存储和沙箱文件存储。
优选地,上述方法还包括:在本地存储所述缓存数据时进行加密,在读取所述缓存数据时进行解密。
优选地,加密方式为DES加密,解密方式为DES解密。
根据本发明的另一方面,提供一种缓存更新装置,包括:请求接收模块,用于接收目标页面的加载请求,其中,所述目标页面包括多个页面资源数据;索引模块,用于根据预设规则建立所述目标页面的加载请求中多个页面资源数据的索引;判断模块,用于若本地存储有所述目标页面的加载请求对应的缓存数据,根据预设规则建立所述缓存数据的索引;更新模块,用于当所述多个页面资源数据的索引与所述缓存数据的索引相同时,不需要更新;当所述多个页面资源数据的索引与所述缓存数据的索引不同时,更新所述缓存数据。
优选地,所述装置还包括:缓存模块,用于若本地没有存储所述目标页面的加载请求对应的缓存数据,从所述多个页面资源数据对应的后台服务器获取多个页面资源数据,并做本地存储。
优选地,所述更新模块包括:比较单元,根据所述多个页面资源数据的索引与所述缓存数据的索引获取待更新的多个页面资源数据;删除单元,用于删除所述缓存数据中与待更新的页面资源数据对应的缓存数据,缓存单元,用于从所述待更新的多个页面资源数据对应的后台服务器获取待更新的缓存数据,更新单元,用于更新所述缓存数据。
优选地,所述预设规则至少包括域名、类型、命名、大小、创建时间中的一种。
优选地,所述缓存数据本地存储的方式为SQLite存储和沙箱文件存储。
优选地,所述装置还包括:加解密模块,用于在本地存储所述缓存数据时进行加密,在读取所述缓存数据时进行解密。
优选地,加密方式为DES加密,解密方式为DES解密。
本发明提供的缓存更新方法及装置根据预设规则建立缓存数据的索引表,并根据当前加载请求与缓存数据是否一致来判断是否更新,并且只更新不一致的缓存数据,可以提高应用程序的加载速度,实现自主更新控制,降低成本。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610348779.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种数据处理的方法、相关设备及存储系统
- 下一篇:数据同步的方法和系统