数据获取方法、装置、计算机设备、存储介质和程序产品制造方法及图纸

技术编号:39417944 阅读:13 留言:0更新日期:2023-11-19 16:08
本申请涉及一种数据获取方法、装置、计算机设备、存储介质和程序产品。该方法包括:接收客户端发送的第一分段请求,第一分段请求用于获取目标数据;根据第一分段请求从目标文件中查询目标数据对应的目标分段数据,目标文件中包括多个分段数据;若从目标文件中未查询到目标数据对应的至少一个第一目标分段数据,则根据至少一个第一目标分段数据生成第二分段请求;将第二分段请求发送至源站服务器,以获取至少一个第一目标分段数据。相比于传统技术,本方案通过从整个目标文件中判断命中的分段数据,针对未命中的分段数据,从源站服务器进行回源获取即可,能够提高对已缓存数据的命中概率,减少对源站服务器的回源请求数量,提高数据获取效率。数据获取效率。数据获取效率。

【技术实现步骤摘要】
数据获取方法、装置、计算机设备、存储介质和程序产品


[0001]本申请涉及数据传输
,特别是涉及一种数据获取方法、装置、计算机设备、存储介质和程序产品。

技术介绍

[0002]在互联网大数据时代,对于网络数据的访问量和数据传输速率的要求越来越高,内容分发网络(Content Delivery Network,简称CDN)是建立在现有网络基础之上的智能虚拟网络,部署在各地的边缘服务器上,能够大大降低对源站的数据访问量。
[0003]现有的CDN缓存网络采用分段缓存技术,在缓存过程中,采用切片方式对已获取到的数据进行缓存,每一个切片对应一个缓存文件;在客户端下次请求数据时,如果请求数据未命中已缓存数据的切片,则需要对未命中的切片数据进行回源获取,导致回源请求数量较大,增加了服务器负担和响应时间。

技术实现思路

[0004]基于此,有必要针对上述技术问题,提供一种能够减少回源请求数量,提高数据获取效率的数据获取方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
[0005]第一方面,本申请提供了一种数据获取方法。该方法包括:
[0006]接收客户端发送的第一分段请求,第一分段请求用于获取目标数据;
[0007]根据第一分段请求从目标文件中查询目标数据对应的目标分段数据,目标文件中包括多个分段数据;
[0008]若从目标文件中未查询到目标数据对应的至少一个第一目标分段数据,则根据至少一个第一目标分段数据生成第二分段请求;
[0009]将第二分段请求发送至源站服务器,以获取至少一个第一目标分段数据。
[0010]在其中一个实施例中,根据至少一个第一目标分段数据生成第二分段请求,包括:
[0011]判断源站服务器的回源类型;回源类型表示源站服务器是否支持多范围回源;
[0012]根据回源类型和至少一个第一目标分段数据,生成第二分段请求。
[0013]在其中一个实施例中,根据回源类型和至少一个第一目标分段数据,生成第二分段请求,包括:
[0014]若回源类型表示源站服务器支持多范围回源,则根据所有的第一目标分段数据生成第二分段请求。
[0015]在其中一个实施例中,根据回源类型和至少一个第一目标分段数据,生成第二分段请求,包括:
[0016]若回源类型表示源站服务器不支持多范围回源,则根据至少一个第一目标分段数据,确定至少一个数据区域;数据区域包括一个第一目标分段数据或者多个连续的第一目标分段数据;
[0017]根据各数据区域生成对应的第二分段请求,其中,不同的数据区域对应不同的第
二分段请求。
[0018]在其中一个实施例中,第一分段请求包括目标数据的数据范围,根据第一分段请求从目标文件中查询目标数据对应的目标分段数据,包括:
[0019]根据数据范围在目标文件中确定至少一个分段单元;
[0020]根据预设的映射关系,查询各分段单元中是否存储有目标分段数据;其中,映射关系用于表示各分段单元中是否存储有分段数据。
[0021]在其中一个实施例中,该方法还包括:
[0022]根据映射关系确定存储有目标分段数据的目标分段单元;
[0023]从各目标分段单元中获取至少一个第二目标分段数据;
[0024]将从源站服务器获取的至少一个第一目标分段数据和至少一个第二目标分段数据发送至客户端。
[0025]在其中一个实施例中,该方法还包括:
[0026]将至少一个第一目标分段数据写入目标文件中空闲的分段单元中,并根据至少一个第一目标分段数据对应的分段单元更新映射关系。
[0027]在其中一个实施例中,将第二分段请求发送至源站服务器之后,该方法还包括:
[0028]若接收到源站服务器返回的预设的错误状态码,则禁止删除目标文件中已缓存的分段数据。
[0029]在其中一个实施例中,目标文件的建立过程包括:
[0030]接收客户端发送的首次分段请求,首次分段请求中包括待请求数据的数据标识和数据范围;
[0031]根据首次分段请求从源站服务器获取与待请求数据对应的请求结果;请求结果中包括文件容量和待请求数据;
[0032]根据请求结果创建待请求数据的数据标识对应的目标文件。
[0033]在其中一个实施例中,根据首次分段请求从源站服务器获取与待请求数据对应的请求结果,包括:
[0034]向源站服务器发送文件容量获取请求,获取待请求数据对应的文件容量;
[0035]若文件容量大于预设数据量阈值,则向源站服务器发送携带待请求数据的数据范围的第一数据获取请求,并接收源站服务器根据待请求数据的数据范围反馈的待请求数据;
[0036]若文件容量小于或等于预设数据量阈值,则向源站服务器发送未携带待请求数据的数据范围的第二数据获取请求,并接收源站服务器根据第二数据获取请求反馈的数据文件,数据文件包括待请求数据和其他数据。
[0037]在其中一个实施例中,根据请求结果创建首次请求的目标数据的数据标识对应的目标文件,包括:
[0038]根据待请求数据创建目标文件;
[0039]若文件容量大于预设数据量阈值,则对目标文件中的待请求数据进行分段存储,得到多个分段数据。
[0040]第二方面,本申请还提供了一种数据获取装置。该装置包括:
[0041]接收模块,用于接收客户端发送的第一分段请求,第一分段请求用于获取目标数
据;
[0042]查询模块,用于根据第一分段请求从目标文件中查询目标数据对应的目标分段数据,目标文件中包括多个分段数据;
[0043]生成模块,用于若从目标文件中未查询到目标数据对应的至少一个第一目标分段数据,则根据至少一个第一目标分段数据生成第二分段请求;
[0044]第一获取模块,用于将第二分段请求发送至源站服务器,以获取至少一个第一目标分段数据。
[0045]第三方面,本申请还提供了一种计算机设备。计算机设备包括存储器和处理器,存储器存储有计算机程序,处理器执行所述计算机程序时实现上述第一方面中的数据获取方法的步骤。
[0046]第四方面,本申请还提供了一种计算机可读存储介质。计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述第一方面中的数据获取方法的步骤。
[0047]第五方面,本申请还提供了一种计算机程序产品。计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述第一方面中的数据获取方法的步骤。
[0048]上述数据获取方法、装置、计算机设备、存储介质和计算机程序产品,缓存服务器通过接收客户端发送的第一分段请求,该第一分段请求用于获取目标数据;根据第一分段请求从目标文件中查询目标数据对应的目标分段数据,目标文件中包括多个分段数据;若从目标文件中未查询到目标数据对应的至少一个第一目标分段数据,则根据至少一个第一目标分段数据生成第二分段请求;将第二分段请本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据获取方法,其特征在于,所述方法包括:接收客户端发送的第一分段请求,所述第一分段请求用于获取目标数据;根据所述第一分段请求从目标文件中查询所述目标数据对应的目标分段数据,所述目标文件中包括多个分段数据;若从所述目标文件中未查询到所述目标数据对应的至少一个第一目标分段数据,则根据所述至少一个第一目标分段数据生成第二分段请求;将所述第二分段请求发送至源站服务器,以获取所述至少一个第一目标分段数据。2.根据权利要求1所述的方法,其特征在于,所述根据所述至少一个第一目标分段数据生成第二分段请求,包括:判断所述源站服务器的回源类型;所述回源类型表示所述源站服务器是否支持多范围回源;根据所述回源类型和所述至少一个第一目标分段数据,生成所述第二分段请求。3.根据权利要求2所述的方法,其特征在于,所述根据所述回源类型和所述至少一个第一目标分段数据,生成所述第二分段请求,包括:若所述回源类型表示所述源站服务器支持多范围回源,则根据所有的所述第一目标分段数据生成所述第二分段请求。4.根据权利要求2所述的方法,其特征在于,所述根据所述回源类型和所述至少一个第一目标分段数据,生成所述第二分段请求,包括:若所述回源类型表示所述源站服务器不支持多范围回源,则根据所述至少一个第一目标分段数据,确定至少一个数据区域;所述数据区域包括一个所述第一目标分段数据或者多个连续的所述第一目标分段数据;根据各所述数据区域生成对应的所述第二分段请求,其中,不同的数据区域对应不同的第二分段请求。5.根据权利要求1至4中任意一项所述的方法,其特征在于,所述第一分段请求包括所述目标数据的数据范围,所述根据所述第一分段请求从目标文件中查询所述目标数据对应的目标分段数据,包括:根据所述数据范围在所述目标文件中确定至少一个分段单元;根据预设的映射关系,查询各所述分段单元中是否存储有所述目标分段数据;其中,所述映射关系用于表示各分段单元中是否存储有分段数据。6.根据权利要求5所述的方法,其特征在于,所述方法还包括:根据所述映射关系确定存储有所述目标分段数据的目标分段单元;从各所述目标分段单元中获取至少一个第二目标分段数据;将从所述源站服务器获取的所述至少一个第一目标分段数据和所述至少一个第二目标分段数据发送至所述客户端。7.根据权利要求5所述的方法,其特征在于,所述方法还包括:将所述至少一个第一目标分段数据写入所述目标文件中空闲的分段单元中,并根据所述至少一个第一目标分段数据对应的分段单元更新所述映射关系。8.根据权利要求1至4中任意一项所述的方法,其特征在于,所述将所述第二分段请求发送至源站服务器之后,所述方法还...

【专利技术属性】
技术研发人员:董学颖童剑
申请(专利权)人:贵州白山云科技股份有限公司
类型:发明
国别省市:

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

1