一种数据缓存方法及装置与流程

文档序号:12494150阅读:227来源:国知局
一种数据缓存方法及装置与流程

本发明涉及互联网技术领域,特别涉及一种数据缓存方法及装置。



背景技术:

有些类型的网站数据更新速度非常快,如具有照片分享、交友、博客等功能的网站,这些网站中,用户能看到好友所分享的心情、博文、照片、视频等。当这类网页被用户打开时,会检测是否有数据更新,当有数据更新时,触发页面的刷新。

现有技术中,当新的数据包括图片或视频时,终端只加载当前屏幕显示的图片或视频,没有显示在当前屏幕中的图片或视频只加载其对应的链接,然而,当用户从有网的环境切换至无网的环境时,没有加载的图片或视频就不能看了,给用户带来了极大的不便,因而,如何提出一种数据缓存方法及装置,用以在进入无网环境后依然能够完整的显示页面中的内容,方便用户浏览。



技术实现要素:

本发明提供一种数据缓存方法及装置,用以在进入无网环境后依然能够完整的显示页面中的内容,方便用户浏览。

本发明提供一种数据缓存方法及装置,包括:

接收刷新当前页面的触发事件;

根据所述触发事件获取所述当前页面中新增数据对应的链接;

对所述链接对应的新增数据进行缓存。

本发明的有益效果在于:预先对当前打开的页面中的所有新增数据进行缓存,从而在进入无网环境后依然能够完整的显示页面中的内容,方便用户对页面进行浏览。

在一个实施例中,所述对所述链接对应的新增数据进行缓存,包括:

判断本地是否已经缓存所述链接对应的新增数据;

当本地没有缓存所述链接对应的新增数据时,下载所述链接对应的新增数据;

当所述链接对应的新增数据下载完成时,将所述链接对应的新增数据存储在本地缓冲区。

本实施例的有益效果在于:预先判断本地是否已经缓存该链接对应的新增数据,从而避免新增数据的重复缓存,减少了存储资源的浪费。

在一个实施例中,在对所述新增数据进行缓存的过程中,所述方法还包括:

当接收到网络请求时,将所述网络请求添加到请求队列中。

本实施例的有益效果在于:通过网络请求队列存储网络请求,从而使网络请求的存储更加有序,在接收到多个网络请求时,便于根据接收到网络请求的时间顺序处理。

在一个实施例中,所述方法还包括:

当监测到所述请求队列中有网络请求时,暂停对所述新增数据的缓存操作;

获取所述请求队列队首的目标网络请求;

对所述目标网络请求进行处理;

当所述目标网络请求处理完毕时,删除所述请求队列队首的目标网络请求。

本实施例的有益效果在于:当检测到请求队列中有网络请求时,暂停对新增数据的缓存操作,从而加快网络请求的处理速度;其次,当目标网络请求处理完毕时,删除请求队列中的目标网络请求,从而节省了存储资源。

在一个实施例中,当所述请求队列中的网络请求全部处理完毕时,所述方法还包括:

判断所述链接对应的服务器是否支持断点续传;

当所述链接对应的服务器支持断点续传时,继续执行已暂停的缓存操作;

当所述链接对应的服务器不支持断点续传时,重新执行所述已暂停的缓存操作。

本实施例的有益效果在于:在请求队列中的网络请求全部处理完毕时,判断链接对应的服务器是否支持断点续传,当支持断点续传时,则继续执行已暂停的缓存操作,从而无需重新执行缓存操作,加快了缓存速度。

本实施例提供一种数据缓存装置,包括:

接收模块,用于接收刷新当前页面的触发事件;

第一获取模块,用于根据所述触发事件获取所述当前页面中新增数据对应的链接;

第一缓存模块,用于对所述链接对应的新增数据进行缓存。

在一个实施例中,所述第一缓存模块,包括:

判断子模块,用于判断本地是否已经缓存所述链接对应的新增数据;

下载子模块,用于当本地没有缓存所述链接对应的新增数据时,下载所述链接对应的新增数据;

存储子模块,用于当所述链接对应的新增数据下载完成时,将所述链接对应的新增数据存储在本地缓冲区。

在一个实施例中,所述装置还包括:

添加模块,用于当接收到网络请求时,将所述网络请求添加到请求队列中。

在一个实施例中,所述装置还包括:

暂停模块,用于当监测到所述请求队列中有网络请求时,暂停对所述新增数据的缓存操作;

第二获取模块,用于获取所述请求队列队首的目标网络请求;

处理模块,用于对所述目标网络请求进行处理;

删除模块,用于当所述目标网络请求处理完毕时,删除所述请求队列队首的目标网络请求。

在一个实施例中,所述装置还包括:

判断模块,用于判断所述链接对应的服务器是否支持断点续传;

第二缓存模块,用于当所述链接对应的服务器支持断点续传时,继续执行已暂停的缓存操作;

第三缓存模块,用于当所述链接对应的服务器不支持断点续传时,重新执行所述已暂停的缓存操作。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

附图说明

附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:

图1为本发明一实施例中一种数据缓存方法的流程图;

图2为本发明一实施例中一种数据缓存方法的流程图;

图3为本发明一实施例中一种数据缓存装置的框图;

图4为本发明一实施例中一种数据缓存装置的框图。

具体实施方式

以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。

图1为本发明一实施例中一种数据缓存方法的流程图,如图1所示,本发明中识别码处理方法可用于终端,该方法包括如下步骤S101-S103:

在步骤S101中,接收刷新当前页面的触发事件;

在步骤S102中,根据触发事件获取当前页面中新增数据对应的链接;

在步骤S103中,对链接对应的新增数据进行缓存。

在用户打开如照片分享、交友、博客等功能的网站时,检测是否有数据更新,当有数据更新时,触发页面的刷新。在刷新时,如果新的数据中包括图片或视频,则只加载当前屏幕显示的图片或视频,没有显示在当前屏幕中的图片或视频只加载其对应的链接。

这样的处理机制,使得用户在从有网的环境切换至无网的环境后,没有加载的图片或视频就不能看了,给用户带来了极大的不便。

考虑上述问题,本实施例中,当接收到刷新当前页面的触发事件时(例如,监测到用户打开当前页面、点击刷新按钮刷新页面等),则监测是否有新增数据,如果有新增数据,判断新增数据中是否有视频或图片这类数据,如果有,则获取新增数据对应的链接,并根据新增数据对应的链接下载新增数据。

这样,能够在有网的情况下,将新增数据进行缓存,从而在进入无网环境后依然能够完整的显示页面中的内容,方便用户浏览。

本发明的有益效果在于:预先对当前打开的页面中的所有新增数据进行缓存,从而在进入无网环境后依然能够完整的显示页面中的内容,方便用户对页面进行浏览。

在一个实施例中,如图2所示,上述步骤S103可被实施为如下步骤S201-S203:

在步骤S201中,判断本地是否已经缓存链接对应的新增数据;

在步骤S202中,当本地没有缓存链接对应的新增数据时,下载链接对应的新增数据;

在步骤S203中,当链接对应的新增数据下载完成时,将链接对应的新增数据存储在本地缓冲区。

本实施例中,在获取当前页面中新增数据对应的链接之后,并不直接对链接对应的新增数据进行缓存,而是先判断本地有没有缓存该链接对应的新增数据。当本地没有缓存该链接对应的新增数据时,下载该链接对应的新增数据。当该链接对应的新增数据下载完成时,将该链接对应的新增数据存储在本地缓冲区。

而当本地缓存过该链接对应的新增数据时候,则不对该链接对应的新增数据进行缓存。以照片分享网站为例,用户的好友之前上传过图片A,而用户在之前已经将图片A对应的数据保存在本地缓冲区。在本次刷新时候,如果新增数据中包括图片A对应的数据,由于该图片A之前在当前页面中出现过,且之前已经保存在本地缓冲区,当当前页面的新增数据中再次出现图片A时,由于之前已经存储过过该图片A,则不再缓存该图片A对应的数据。

需要说明的是,本方案在缓存新增数据时,还可以变下载边存储,即下载一部分新增数据,就将该部分新增数据进行存储。

本实施例的有益效果在于:预先判断本地是否已经缓存该链接对应的新增数据,从而避免新增数据的重复缓存,减少了存储资源的浪费。

在一个实施例中,在对新增数据进行缓存的过程中,方法还可被实施为如下步骤:

当接收到网络请求时,将网络请求添加到请求队列中。

本实施例中,在接收到网络请求时,将网络请求添加到请求队列中,例如,新增数据中包括视频A和视频B,视频A在视频B之前,在缓存时,优先缓存视频A,而在视频A缓存过程中,如果用户将当前屏幕显示的内容由当前区域拖动到视频B所对应的区域时,则相当于请求加载视频B的网络请求,在本地接收到加载视频B的网络请求时,将该网络请求添加到请求队列中。

由于带宽资源有限,此时,如果继续缓存视频A,则会拖慢视频B的加载速度,因而,可暂停对视频A的缓存,优先缓存视频B。从而加快视频B的加载速度,使用户更快的观看到视频B对应的内容。

本实施例的有益效果在于:通过网络请求队列存储网络请求,从而使网络请求的存储更加有序,在接收到多个网络请求时,便于根据接收到网络请求的时间顺序处理。

在一个实施例中,在将网络请求添加到请求队列中之后,方法还可被实施为如下步骤A1-A4

在步骤A1中,当监测到请求队列中有网络请求时,暂停对新增数据的缓存操作;

在步骤A2中,获取请求队列队首的目标网络请求;

在步骤A3中,对目标网络请求进行处理;

在步骤A4中,当目标网络请求处理完毕时,删除请求队列队首的目标网络请求。

本实施例中,当检测到请求队列中有网络请求时,暂停对新增数据的缓存操作,获取请求队列队首的目标网络请求,并对获取到的目标网络请求进行处理,当该目标网络请求处理完毕时,删除请求队列队首的目标网络请求。

例如,新增数据中包括视频A和视频B,视频A在视频B之前,在缓存时,优先缓存视频A。

如果在视频A缓存过程中,用户将当前屏幕显示的内容由当前区域拖动到视频B所对应的区域,则相当于请求加载视频B的网络请求b,在本地接收到加载视频B的网络请求时b,将该网络请求b添加到请求队列中。

由于网络请求通常是由用户主动发出的,因而,考虑到带宽资源有限,而缓存新增数据会拖慢对网络请求的处理,因而,网络请求具有比缓存新增数据更高的优先级,从而加快网络请求的处理进度。当本地检测到请求队列中有网络请求时,暂停对新增数据的缓存操作。假设队列中只有网络请求b,则从请求队列的队首获取该网络请求b,对该网络请求b进行处理(即对视频B进行加载),当该网络请求b处理完毕时(即视频B加载完毕),删除该请求队列队首的网络请求b。

本实施例的有益效果在于:当检测到请求队列中有网络请求时,暂停对新增数据的缓存操作,从而加快网络请求的处理速度;其次,当目标网络请求处理完毕时,删除请求队列中的目标网络请求,从而节省了存储资源。

在一个实施例中,当请求队列中的网络请求全部处理完毕时,方法还可被实施为如下步骤B1-B3:

在步骤B1中,判断链接对应的服务器是否支持断点续传;

在步骤B2中,当链接对应的服务器支持断点续传时,继续执行已暂停的缓存操作;

在步骤B3中,当链接对应的服务器不支持断点续传时,重新执行已暂停的缓存操作。

本实施例中,在请求队列中的网络请求全部处理完毕时,需要继续执行之前暂停新增数据的缓存操作。此时,需要判断之前执行的缓存操作的链接对应的服务器是否支持断点续传。

如果该链接对应的服务器支持断点续传,则继续执行已暂停的缓存操作,例如,之前该链接对应的新增数据下载了30%,则可以从30%处继续下载。

如果该链接对应的服务器不支持断点续传,则重新执行已暂停的缓存操作。例如,之前该链接对应的新增数据下载了30%,则将下载的数据删除,并重新下载该链接对应的新增数据。

本实施例的有益效果在于:在请求队列中的网络请求全部处理完毕时,判断链接对应的服务器是否支持断点续传,当支持断点续传时,则继续执行已暂停的缓存操作,从而无需重新执行缓存操作,加快了缓存速度。

图3为本发明一实施例中一种数据缓存装置的框图,如图3所示,本发明中识别码处理装置可用于终端,该装置包括如下模块:

接收模块31,用于接收刷新当前页面的触发事件;

第一获取模块32,用于根据触发事件获取当前页面中新增数据对应的链接;

第一缓存模块33,用于对链接对应的新增数据进行缓存。

在一个实施例中,如图4所示,第一缓存模块33,包括:

判断子模块41,用于判断本地是否已经缓存链接对应的新增数据;

下载子模块42,用于当本地没有缓存链接对应的新增数据时,下载链接对应的新增数据;

存储子模块43,用于当链接对应的新增数据下载完成时,将链接对应的新增数据存储在本地缓冲区。

在一个实施例中,装置还包括:

添加模块,用于当接收到网络请求时,将网络请求添加到请求队列中。

在一个实施例中,装置还包括:

暂停模块,用于当监测到请求队列中有网络请求时,暂停对新增数据的缓存操作;

第二获取模块,用于获取请求队列队首的目标网络请求;

处理模块,用于对目标网络请求进行处理;

删除模块,用于当目标网络请求处理完毕时,删除请求队列队首的目标网络请求。

在一个实施例中,装置还包括:

判断模块,用于判断链接对应的服务器是否支持断点续传;

第二缓存模块,用于当链接对应的服务器支持断点续传时,继续执行已暂停的缓存操作;

第三缓存模块,用于当链接对应的服务器不支持断点续传时,重新执行已暂停的缓存操作。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

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