一种数据缓存方法及装置、电子设备制造方法及图纸

技术编号:20363439 阅读:28 留言:0更新日期:2019-02-16 16:46
本公开提供一种数据缓存方法及装置、电子设备和计算机可读存储介质。其中,数据缓存方法包括:从当前请求中获取至少一个与数据段对应的请求项;在请求项包含的数据段中添加服务器上一次针对对应数据段返回的数据中的标识数据;向服务器发送添加有标识数据的请求项;接收服务器根据请求项返回的最新数据或增量数据。本公开实施例,可以支持单请求多数据段的数据缓存,从而达到增量更新的目的,进而可以节省服务器和客户端之间的带宽流量,提高服务器和客户端之间的通信速度。

【技术实现步骤摘要】
一种数据缓存方法及装置、电子设备
本公开涉及通信技术,尤其涉及一种数据缓存方法及装置、电子设备和计算机可读存储介质。
技术介绍
目前常用的浏览器,例如谷歌浏览器(GoogleChrome)、火狐(Firefox)、微软浏览器(InternetExplorer)或苹果浏览器(Safari)等都支持超文本传输协议(HyperTextTransferProtocol,简称HTTP)/1.1协议中的缓存处理,以达到节省带宽和提高访问速度的目的。其中,标准的HTTP/1.1协议有针对HTTP请求缓存的处理逻辑,分别定义了上次修改(Last-Modified)、实体标签(EntityTag,简称ETag)、过期时间(Expires)头信息来处理HTTP请求最后更新时间、返回内容指纹、请求内容过期时间。但是,传统的HTTP协议提供的缓存处理方案存在以下两个问题:第一个问题是:传统的HTTP协议基于统一资源定位符(UniformResourceLocator,URL)维度进行缓存处理,只要URL发生变化,缓存立即失效,第二个问题是:传统的HTTP协议缓存的是请求的全部内容,对于部分内容变更,无法复用之前的数据。
技术实现思路
有鉴于此,本公开提供一种数据缓存方法及装置、电子设备和计算机可读存储介质。具体地,本公开是通过如下技术方案实现的:根据本公开实施例的第一方面,提供一种数据缓存方法,所述方法包括:从当前请求中获取至少一个与数据段对应的请求项;在所述请求项包含的数据段中添加服务器上一次针对对应数据段返回的数据中的标识数据;向所述服务器发送添加有所述标识数据的请求项;接收所述服务器根据所述请求项返回的最新数据或增量数据。在一实施例中,所述方法还包括:接收所述服务器根据所述请求项返回的数据无更新的信息。在一实施例中,所述方法还包括:在所述在所述请求项包含的数据段中添加服务器上一次针对对应数据段返回的数据中的标识数据之前,确定客户端缓存有所述服务器上一次针对对应数据段返回的数据。在一实施例中,所述方法还包括:若确定客户端未缓存有所述服务器上一次针对对应数据段返回的数据,则向所述服务器发送请求项;接收所述服务器为所述请求项包含的数据段返回的数据,并缓存所述数据及对应的数据段标识。在一实施例中,所述当前请求包括当前HTTP请求或当前传输控制协议(TCP)请求,所述标识数据包括上次修改、实体标签、过期时间和版本号中的一项或几项数据。根据本公开实施例的第二方面,提供一种数据缓存装置,所述装置包括:获取模块,用于从当前请求中获取至少一个与数据段对应的请求项;添加模块,用于在所述获取模块获取的所述请求项包含的数据段中添加服务器上一次针对对应数据段返回的数据中的标识数据;发送模块,用于向所述服务器发送所述添加模块添加的所述标识数据后的所述请求项;第一接收模块,用于接收所述服务器根据所述发送模块发送的所述请求项返回的最新数据或增量数据。在一实施例中,所述装置还包括:第二接收模块,用于接收所述服务器根据所述发送模块发送的所述请求项返回的数据无更新的信息。在一实施例中,所述装置还包括:确定模块,用于在所述添加模块在所述请求项包含的数据段中添加服务器上一次针对对应数据段返回的数据中的标识数据之前,确定客户端缓存有所述服务器上一次针对对应数据段返回的数据。在一实施例中,所述发送模块,还用于:若所述确定模块确定客户端未缓存有所述服务器上一次针对对应数据段返回的数据,则向所述服务器发送请求项;接收缓存模块,用于接收所述服务器为所述发送模块发送的所述请求项包含的数据段返回的数据,并缓存所述数据及对应的数据段标识。在一实施例中,所述当前请求包括当前HTTP请求或当前传输控制协议TCP请求,所述标识数据包括上次修改、实体标签、过期时间和版本号中的一项或几项数据。根据本公开实施例的第三方面,提供一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行上述数据缓存方法。根据本公开实施例的第四方面,提供一种电子设备,包括处理器、存储器及存储在所述存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述数据缓存方法。本公开实施例,通过从当前请求中获取至少一个与数据段对应的请求项,并在请求项包含的数据段中添加服务器上一次针对对应数据段返回的数据中的标识数据,然后向服务器发送添加有标识数据的请求项,并接收服务器根据请求项返回的最新数据或增量数据,可以支持单请求多数据段的数据缓存,从而达到增量更新的目的,进而可以节省服务器和客户端之间的带宽流量,提高服务器和客户端之间的通信速度。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本专利技术的实施例,并与说明书一起用于解释本专利技术的原理。图1是本公开一示例性实施例示出的一种数据缓存方法的流程图;图2是本公开一示例性实施例示出的另一种数据缓存方法的流程图;图3是本公开一示例性实施例示出的另一种数据缓存方法的流程图;图4是本公开一示例性实施例示出的数据缓存装置所在电子设备的一种硬件结构图;图5是本公开一示例性实施例示出的一种数据缓存装置的框图;图6是本公开一示例性实施例示出的另一种数据缓存装置的框图;图7是本公开一示例性实施例示出的另一种数据缓存装置的框图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。图1是本公开一示例性实施例示出的一种数据缓存方法的流程图,如图1所示,该方法包括:步骤S101,从当前请求中获取至少一个与数据段对应的请求项。其中,当前请求可以包括但不局限于当前HTTP请求或当前传输控制协议(TransmissionControlProtocol,简称TCP)请求。在该实施例中,可以从当前请求中获取一个或多个请求项,其中,每个请求项可以与一个或多个数据段对应,每个请求项可以通过标识区分开。步骤S102,在请求项包含的数据段中添加服务器上一次针对对应数据段返回的数据中的标识数据。其中,标识数据是指能够通过标识进行区分的数据。在该实施例中,标识数据可以包括但不局限于上次修改(Last-Modified)、实本文档来自技高网...

【技术保护点】
1.一种数据缓存方法,其特征在于,所述方法包括:从当前请求中获取至少一个与数据段对应的请求项;在所述请求项包含的数据段中添加服务器上一次针对对应数据段返回的数据中的标识数据;向所述服务器发送添加有所述标识数据的所述请求项;接收所述服务器根据所述请求项返回的最新数据或增量数据。

【技术特征摘要】
1.一种数据缓存方法,其特征在于,所述方法包括:从当前请求中获取至少一个与数据段对应的请求项;在所述请求项包含的数据段中添加服务器上一次针对对应数据段返回的数据中的标识数据;向所述服务器发送添加有所述标识数据的所述请求项;接收所述服务器根据所述请求项返回的最新数据或增量数据。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:接收所述服务器根据所述请求项返回的数据无更新的信息。3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:在所述在所述请求项包含的数据段中添加服务器上一次针对对应数据段返回的数据中的标识数据之前,确定客户端缓存有所述服务器上一次针对对应数据段返回的数据。4.根据权利要求3所述的方法,其特征在于,所述方法还包括:若确定客户端未缓存有所述服务器上一次针对对应数据段返回的数据,则向所述服务器发送请求项;接收所述服务器为所述请求项包含的数据段返回的数据,并缓存所述数据及对应的数据段标识。5.根据权利要求1-4任一项所述的方法,其特征在于,所述当前请求包括当前超文本传输协议HTTP请求或当前传输控制协议TCP请求,所述标识数据包括上次修改、实体标签、过期时间和版本号中的一项或几项数据。6.一种数据缓存装置,其...

【专利技术属性】
技术研发人员:付超群姚琛
申请(专利权)人:北京三快在线科技有限公司
类型:发明
国别省市:北京,11

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

1