一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据下载方法、装置、计算机设备和存储介质与流程

2021-11-15 17:52:00 来源:中国专利 TAG:


1.本技术涉及云计算技术领域,尤其涉及一种数据下载方法、装置、计算机设备和存储介质。


背景技术:

2.家庭节点为普通用户家庭利用闲置带宽提供下载服务的路由器或机顶盒等,家庭节点为了能够为用户提供数据服务,也就需要下载文件资源,以便能够及时响应用户对于文件资源的请求。
3.但现有的家庭节点获取文件资源的方式仅能通过一个cdn节点或源站服务器获取文件资源,通过一个cdn节点获取文件资源的方式下载速率较慢,且仅利用cdn节点下载数据的使用成本较高。


技术实现要素:

4.为了解决上述技术问题,本技术提供了一种数据下载方法、装置、计算机设备和存储介质。
5.第一方面,本技术提供了一种数据下载方法,应用于边缘节点,包括:
6.向调度系统发送文件拉取请求,其中,所述文件拉取请求用于目标边缘节点请求下载目标文件;
7.接收所述调度系统返回的响应信息,其中,所述响应信息包括多个待访问节点的访问地址以及所述目标文件在所述待访问节点中的存储状态,所述多个待访问节点为保存有所述目标文件或所述目标文件中的部分数据的节点;
8.根据所述目标文件在所述多个待访问节点中的存储状态生成多个下载请求,其中,每个所述下载请求用于从一个待访问节点下载所述目标文件中的部分数据,任意两个所述下载请求所请求下载的数据不同;
9.将每个所述下载请求发送至所述多个待访问节点中与所述下载请求中访问地址匹配的目标节点,以从所述目标节点下载所述目标文件中的部分数据。
10.第二方面,本技术提供了一种数据下载方法,应用于调度系统,所述方法包括:
11.接收多个边缘节点的第一上报数据,其中,所述第一上报数据用于指示节点的服务状态;
12.接收目标边缘节点的文件拉取请求,其中,所述文件拉取请求用于请求下载目标文件;
13.根据所述多个边缘节点的第一上报数据,为所述目标边缘节点分配响应所述文件拉取请求的多个待访问节点,所述多个待访问节点为保存有所述目标文件或所述目标文件中部分数据的节点;
14.将所述目标文件在所述多个待访问节点中的存储状态以及所述多个待访问节点的访问地址,作为响应信息返回至所述目标边缘节点,以使所述目标边缘节点按照访问地
址从所述多个待访问节点中的目标节点下载所述目标文件中的部分数据。
15.第三方面,本技术提供了一种数据下载装置,包括:
16.请求模块,用于向调度系统发送文件拉取请求,其中,所述文件拉取请求用于目标边缘节点请求下载目标文件;
17.第一接收模块,用于接收所述调度系统返回的响应信息,其中,所述响应信息包括多个待访问节点的访问地址以及所述目标文件在所述待访问节点中的存储状态,所述多个待访问节点为保存有所述目标文件或所述目标文件中的部分数据的节点;
18.请求拆分模块,用于根据所述目标文件在所述多个待访问节点中的存储状态生成多个下载请求,其中,每个所述下载请求用于从一个待访问节点下载所述目标文件中的部分数据,任意两个所述下载请求所请求下载的数据不同;
19.下载模块,用于将每个所述下载请求发送至所述多个待访问节点中与所述下载请求中访问地址匹配的目标节点,以从所述目标节点下载所述目标文件中的部分数据。
20.第四方面,本技术提供了一种数据下载装置,包括:
21.第二接收模块,用于接收多个边缘节点的第一上报数据,其中,所述第一上报数据用于指示节点的服务状态;接收目标边缘节点的文件拉取请求,其中,所述文件拉取请求用于请求下载目标文件;
22.节点调度模块,用于根据所述多个边缘节点的第一上报数据,为所述目标边缘节点分配响应所述文件拉取请求的多个待访问节点,所述多个待访问节点为保存有所述目标文件或所述目标文件中部分数据的节点;
23.响应模块,用于将所述目标文件在所述多个待访问节点中的存储状态以及所述多个待访问节点的访问地址,作为响应信息返回至所述目标边缘节点,以使所述目标边缘节点按照访问地址从所述多个待访问节点中的目标节点下载所述目标文件中的部分数据。
24.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
25.向调度系统发送文件拉取请求,其中,所述文件拉取请求用于目标边缘节点请求下载目标文件;
26.接收所述调度系统返回的响应信息,其中,所述响应信息包括多个待访问节点的访问地址以及所述目标文件在所述待访问节点中的存储状态,所述多个待访问节点为保存有所述目标文件或所述目标文件中的部分数据的节点;
27.根据所述目标文件在所述多个待访问节点中的存储状态生成多个下载请求,其中,每个所述下载请求用于从一个待访问节点下载所述目标文件中的部分数据,任意两个所述下载请求所请求下载的数据不同;
28.将每个所述下载请求发送至所述多个待访问节点中与所述下载请求中访问地址匹配的目标节点,以从所述目标节点下载所述目标文件中的部分数据。
29.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
30.向调度系统发送文件拉取请求,其中,所述文件拉取请求用于目标边缘节点请求下载目标文件;
31.接收所述调度系统返回的响应信息,其中,所述响应信息包括多个待访问节点的
访问地址以及所述目标文件在所述待访问节点中的存储状态,所述多个待访问节点为保存有所述目标文件或所述目标文件中的部分数据的节点;
32.根据所述目标文件在所述多个待访问节点中的存储状态生成多个下载请求,其中,每个所述下载请求用于从一个待访问节点下载所述目标文件中的部分数据,任意两个所述下载请求所请求下载的数据不同;
33.将每个所述下载请求发送至所述多个待访问节点中与所述下载请求中访问地址匹配的目标节点,以从所述目标节点下载所述目标文件中的部分数据。
34.基于上述数据下载方法,目标边缘节点向调度系统发送文件拉取请求,以请求下载目标文件,调度系统则根据文件拉取请求为目标边缘节点分配多个待访问节点,每个待访问节点中存储有目标文件或目标文件中的部分数据,调度系统将多个待访问节点的访问地址以及目标文件在待访问节点中的存储状态,发送至目标边缘节点,使目标边缘节点根据目标文件在多个待访问节点中的存储状态,生成多个下载请求,每个下载请求用于从一个待访问节点下载所述目标文件中的部分数据,任意两个所述下载请求所请求下载的数据不同,将每个所述下载请求发送至所述多个待访问节点中与所述下载请求中访问地址匹配的目标节点,以从所述目标节点下载所述目标文件中的部分数据,即目标边缘节点可以从多个待访问节点下载目标文件中的部分数据,直至目标边缘节点获取目标文件的全部数据,以此方式提高了下载效率。
附图说明
35.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
36.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
37.图1为一个实施例中数据下载方法的应用环境图;
38.图2为一个实施例中数据下载方法应用于边缘节点的流程示意图;
39.图3为一个实施例中数据下载方法应用于调度系统的流程示意图;
40.图4为一个实施例中数据下载装置应用于边缘节点的结构框图;
41.图5为一个实施例中数据下载装置应用于调度系统的结构框图;
42.图6为一个实施例中计算机设备的内部结构图。
具体实施方式
43.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
44.图1为一个实施例中数据下载方法的应用环境图。参照图1,该数据下载方法应用于数据下载系统。该数据下载系统包括边缘节点和调度系统130。其中,边缘节点100具体可以为家庭节点110或cdn节点120,家庭节点110和cdn节点120、调度系统130通过网络连接。
家庭节点110为普通用户家庭利用闲置带宽提供下载服务的路由器或机顶盒等,cdn节点120为内容分发网络中的节点,cdn节点又称为边缘节点、cache节点等,对于用户的数据请求有较好的响应能力和连接速度,cdn节点可作为缓存服务器提供数据服务。调度系统130可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
45.参照图1,在边缘节点100为目标家庭节点的情况下,目标家庭节点可以从存储有目标文件的家庭节点110下载数据,也可以从存储有目标文件的cdn节点下载数据;同理,在边缘节点100为目标cdn节点的情况下,目标cdn节点可以从存储有目标文件的家庭节点110下载数据,也可以从存储有目标文件的cdn节点下载数据,以提高下载效率。
46.在一个实施例中,图2为一个实施例中一种数据下载方法的流程示意图,参照图2,提供了一种数据下载方法。本实施例主要以该方法应用于上述图1中的边缘节点来举例说明,该数据下载方法具体包括如下步骤:
47.步骤s210,向调度系统发送文件拉取请求。
48.在本实施例中,所述文件拉取请求用于目标边缘节点请求下载目标文件,目标边缘节点可以为家庭节点或cdn节点,文件拉取请求为家庭节点达到触发条件时生成的请求,触发条件具体包括但不限于达到家庭节点预设的周期性的文件拉取时间,或在目标边缘节点在启动时,或是接收到用户对于目标文件的数据请求时。
49.步骤s220,接收所述调度系统返回的响应信息。
50.在本实施例中,所述响应信息包括多个待访问节点的访问地址以及所述目标文件在所述待访问节点中的存储状态,所述多个待访问节点为保存有所述目标文件或所述目标文件中的部分数据的节点,待访问节点包括家庭节点和cdn节点。即调度系统根据文件拉取请求为目标边缘节点分配可以响应文件拉取请求的节点。
51.步骤s230,根据所述目标文件在所述多个待访问节点中的存储状态生成多个下载请求。
52.在本实施例中,目标文件在多个待访问节点中的存储状态包括下载中和缓存完成,下载中表示待访问节点正在下载目标文件,处于下载中状态的待访问节点中缓存有目标文件的部分数据,缓存完成表示待访问节点中存在完整的目标文件,目标边缘节点按照目标文件对应的数据量将目标文件拆分为多个部分数据,每个部分数据对应生成一个下载请求,任意两个所述下载请求所请求下载的数据不同,将待访问节点中已缓存的部分数据与目标文件中相同部分数据所对应的下载请求之间的关联关系进行保存,即每个所述下载请求用于从一个待访问节点下载所述目标文件中的部分数据,每个下载请求携带有对应的待访问节点的访问地址。
53.步骤s240,将每个所述下载请求发送至所述多个待访问节点中与所述下载请求中访问地址匹配的目标节点,以从所述目标节点下载所述目标文件中的部分数据。
54.在本实施例中,将每个下载请求按照对应的访问地址发送至对应的待访问节点,以实现同时从多个待访问节点获取目标文件中的部分数据,直至目标边缘节点获取目标文件的全部数据,相较于从一个节点获取目标文件,提高了下载效率,且待访问节点包括家庭节点和cdn节点,相较于单独仅从cdn节点下载目标文件,减少了使用成本。
55.在一个下载请求与多个待访问节点的访问地址存在关联关系的情况下,表示在多个待访问节点中均缓存有该下载请求对应的部分数据,则按照各个待访问节点的数据传输
状态在多个待访问节点中确定最终的请求发送对象,数据传输状态为数据传输中或传输闲置中,即在与下载请求存在关联关系的多个待访问节点中,选择数据传输状态为传输闲置中的待访问节点作为最终的请求发送对象,即将该下载请求发送至未执行数据传输任务的待访问节点。
56.在一个实施例中,所述根据所述目标文件在所述多个待访问节点中的存储状态生成多个下载请求,包括:
57.在所述待访问节点的存储状态为下载中的情况下,根据所述待访问节点对于所述目标文件已缓存的部分数据,生成对应的第四请求,其中,所述下载请求包括所述第四请求,所述第四请求用于请求下载所述待访问节点中对于所述目标文件已缓存的部分数据;在所述待访问节点的存储状态为缓存完成的情况下,根据所述目标文件中未生成下载请求的部分数据,生成对应的第五请求,其中,所述下载请求包括所述第五请求,所述第五请求用于请求下载所述目标文件中与所述第五请求对应的部分数据。
58.具体地,目标文件在待访问节点中的存储状态为下载中,表示该待访问节点正在下载目标文件,且该待访问节点中已缓存有目标文件中的部分数据,根据待访问节点中已缓存的部分数据生成对应的第四请求,即目标边缘节点可以通过向该待访问节点发送第四请求,以下载该待访问节点中已缓存的部分数据,即第四请求所对应的部分数据为该待访问节点中已缓存的部分数据。
59.目标文件在待访问节点中的存储状态为缓存完成,表示该待访问节点中存储有完整的目标文件,则根据所述目标文件中未生成下载请求的部分数据,生成对应的第五请求,目标边缘节点可以通过向该待访问节点发送第五请求以下载第五请求对应的部分数据。
60.在一个实施例中,所述将每个所述下载请求发送至所述多个待访问节点中与所述下载请求中访问地址匹配的目标节点,以从所述目标节点下载所述目标文件中的部分数据,包括:
61.将第一请求按照访问地址发送至相应的家庭节点,以从家庭节点下载所述目标数据中的部分数据,其中,所述多个下载请求包括所述第一请求,所述第一请求为所述第四请求或所述第五请求,所述目标节点包括所述家庭节点;或,将所述第一请求按照访问地址发送至相应的家庭节点,并将所述多个下载请求中的第二请求按照访问地址发送至相应的cdn节点,以从家庭节点和cdn节点下载所述目标数据中的部分数据,其中,所述目标节点包括家庭节点和cdn节点,所述第二请求为所述第四请求或所述第五请求。
62.具体地,在目标节点包括多个家庭节点的情况下,将第一请求按照访问地址发送至相应的家庭节点,第一请求为第四请求或第五请求,即参照上一实施例,在第一请求为第四请求时,表示待访问的家庭节点正在下载目标文件,第一请求用于请求下载家庭节点中已缓存的部分数据;在第一请求为第五请求时,表示待访问的家庭节点中存储有完整的目标文件,第一请求用于下载家庭节点中第一请求所请求的部分数据,以实现从多个家庭节点下载目标文件中的部分数据,直至下载完目标文件的所有数据,由于使用家庭节点下载数据的成本低于使用cdn节点下载数据的成本,以此方式可以很大程度上的减少使用成本。
63.在目标节点包括家庭节点和cdn节点的情况下,将第一请求发送至家庭节点,以从家庭节点下载第一请求所请求的部分数据,同时将第二请求发送至cdn节点,以从cdn节点下载第二请求所请求的部分数据,第二请求为第四请求或第五请求,与上述第一请求同理,
在第二请求为第四请求时,表示待访问的cdn节点正在下载目标文件,第二请求用于请求下载cdn节点中已缓存的部分数据;在第二请求为第五请求时,表示待访问的cdn节点中存储有完整的目标文件,第二请求用于下载家庭节点中第一请求所请求的部分数据。以此方式实现同时从家庭节点和cdn节点下载目标文件中的部分数据,相较于仅从cdn节点下载文件,可以降低使用成本。
64.在一个实施例中,在所述目标边缘节点为目标家庭节点的情况下,所述将每个所述下载请求发送至所述多个待访问节点中与所述下载请求中访问地址匹配的目标节点,以从所述目标节点下载所述目标文件中的部分数据,还包括:
65.在从家庭节点下载所述目标数据中的部分数据或从家庭节点和cdn节点下载所述目标数据中的部分数据之前,将所述下载请求中的第三请求按照访问地址发送至相应的cdn节点,以从所述cdn节点下载所述目标文件中的部分数据;在接收到所述cdn节点返回的数据,根据所述cdn节点返回数据的传输状态,确定对应的第一切换条件;其中,在满足所述第一切换条件的情况下,切换为同时从家庭节点下载数据或从家庭节点和cdn节点下载数据。
66.具体地,在同时从多个家庭节点或从家庭节点和cdn节点下载目标文件的部分数据之前,先向cdn节点发送第三请求,第三请求用于从cdn节点下载目标文件中的部分数据,因为cdn节点的传输速率大于家庭节点的传输速率,家庭节点的服务能力较弱,因此,在数据下载前期通过cdn节点能够较快下载目标文件中的部分数据,在接收到cdn节点返回的数据之后,根据cdn节点返回数据的传输状态确定对应的第一切换条件,第一切换条件用于判断是否能将下载方式从cdn节点下载切换为同时从多个家庭节点下载或同时从家庭节点和cdn节点下载,在满足第一切换条件的情况下,切换为从家庭节点下载数据或从家庭节点和cdn节点下载数据。
67.在一个实施例中,所述在满足所述第一切换条件的情况下,切换为从家庭节点下载数据或从家庭节点和cdn节点下载数据,包括:
68.在从所述cdn节点返回数据的传输速率大于或等于第一速率的情况下,切换为从家庭节点和cdn节点下载数据。
69.具体地,第一切换条件具体为从cdn节点返回数据的传输速率是否大于或等于第一速率,第一速率用于指示目标家庭节点获取目标文件的下载速率要求,通常第一速率为调度系统为目标家庭节点配置的,可根据实际情况进行配置调整,在从所述cdn节点返回数据的传输速率大于或等于第一速率的情况下,表示从cdn节点获取数据的传输速率满足了目标家庭节点获取目标文件的下载速率要求,在满足目标家庭节点的下载要求的情况下,为了尽可能的降低成本,则可以将下载方式由从cdn节点下载切换为从家庭节点和cdn节点下载数据,即可以同时从家庭节点和cdn节点下载目标文件中的部分数据,以确保在满足目标家庭节点的下载要求的基础上,减低使用成本,还提高了下载效率。
70.在从家庭节点和cdn节点下载数据的平均下载速率小于第一速率的情况下,将目标家庭节点从家庭节点和cdn节点下载数据切换为从cdn节点下载数据。
71.在一个实施例中,所述切换为从家庭节点和cdn节点下载数据之后,所述方法还包括:
72.在接收到所述家庭节点返回的数据的情况下,根据所述家庭节点返回数据的传输
状态,确定对应的第二切换条件;在满足所述第二切换条件的情况下,切换为仅从所述家庭节点下载数据。
73.具体地,切换为从家庭节点和cdn节点下载数据之后,根据家庭节点返回数据的传输状态确定对应的第二切换条件,即第二切换条件用于判断是否能够将下载方式由从家庭节点和cdn节点下载数据切换为仅从家庭节点下载,在满足第二切换条件的情况下,将不再从cdn节点下载数据,仅从多个家庭节点下载数据,以实现最大化地降低成本。
74.在一个实施例中,所述在满足所述第二切换条件的情况下,切换为仅从所述家庭节点下载数据,包括:
75.在从所述家庭节点返回数据的传输速率大于或等于第二速率的情况下,切换为仅从所述家庭节点下载数据。
76.具体地,所述第二切换条件包括传输速率大于或等于第二速率,第二速率用于指示所述第二切换条件的切换标准,即第二速率用于指示目标家庭节点获取目标文件的下载速率要求,第二速率与第一速率可以设为相同参数,也可以设为不同的参数。在从所述家庭节点返回数据的传输速率大于或等于第二速率的情况下,表示从家庭节点下载目标文件中的部分数据的传输速率满足目标家庭节点获取目标文件的下载速率要求,在满足目标家庭节点的下载要求的情况下,将下载方式由从家庭节点和cdn节点下载数据切换为仅从多个家庭节点下载数据,以确保在满足目标家庭节点的下载要求的基础上,最大化地降低了成本,还提高了下载效率。
77.在从家庭节点下载数据的下载速率小于第二速率的情况下,将目标家庭节点从多个家庭节点下载数据切换为从家庭节点和cdn节点下载数据。
78.在一个实施例中,从家庭节点获取所述目标文件中的部分数据,包括:
79.按照p2p数据传输方式从家庭节点下载所述目标文件中的部分数据。
80.具体地,p2p数据传输方式用于指示点对点的文件共享传输,该下载方式不需要服务器,而是在用户机与用户机之间进行传播,每台用户机在自己下载其它用户机中存储的文件的同时,还可以为其他用户机提供下载服务。通过p2p数据传输方式使得家庭节点可以从其周围的多个存储有目标文件中部分数据的家庭节点下载数据,提高了数据下载效率,同时还降低了相对于单独使用cdn节点下载数据的使用成本。
81.在一个实施例中,本实施例提供了一种数据下载方法,应用于调度系统,所述方法包括:
82.步骤s310,接收多个边缘节点的第一上报数据,其中,第一上报数据用于指示节点的服务状态。
83.在本实施例中,调度系统按照时间周期定期接收来自各个节点的上报数据,第一上报数据用于指示调度系统在接收到文件拉取请求之前接收到的上报数据,上报数据包括节点的运行状态、存储状态以及属性信息,其中,运行状态用于指示节点提供数据服务的服务能力,存储状态用于指示节点内的存储文件以及可用存储空间,属性信息包括节点覆盖区域和节点所属的网络运营商等。
84.步骤s320,接收目标边缘节点的文件拉取请求,其中,所述文件拉取请求用于请求下载目标文件。
85.在本实施例中,文件拉取请求包括目标边缘节点的下载要求以及节点覆盖区域。
86.步骤s330,根据所述多个边缘节点的第一上报数据,为所述目标边缘节点分配响应所述文件拉取请求的多个待访问节点,所述多个待访问节点为保存有所述目标文件或所述目标文件中部分数据的节点。
87.在本实施例中,在多个边缘节点的第一上报数据中,将存储文件中包含目标文件、且节点覆盖区域与目标边缘节点的节点覆盖区域相关联的节点作为待访问节点,以此方式确定目标边缘节点附近能够为其提供数据服务的节点。
88.步骤s340,将所述目标文件在所述多个待访问节点中的存储状态以及所述多个待访问节点的访问地址,作为响应信息返回至所述目标边缘节点,以使所述目标边缘节点按照访问地址从所述多个待访问节点中的目标节点下载所述目标文件中的部分数据。
89.在本实施例中,获取各个待访问节点的访问地址以及目标文件在待访问节点中的存储状态,存储状态包括下载中和缓存完成,下载中表示待访问节点正在下载目标文件,处于下载中状态的待访问节点中缓存有目标文件的部分数据,缓存完成表示待访问节点中存在完整的目标文件,将所述目标文件在所述多个待访问节点中的存储状态以及所述多个待访问节点的访问地址发送至目标边缘节点,使所述目标边缘节点按照访问地址从所述多个待访问节点中的目标节点下载所述目标文件中的部分数据,以实现同时从多个待访问节点获取目标文件中的部分数据,提高了下载效率。
90.在一个实施例中,所述将所述目标文件在所述多个待访问节点中的存储状态以及所述多个待访问节点的访问地址,作为响应信息返回至所述目标边缘节点,包括:
91.将所述多个待访问节点中的cdn节点的访问地址发送至所述目标边缘节点,以使所述目标边缘节点从所述cdn节点下载所述目标文件中的部分数据,其中,所述目标节点包括cdn节点;接收所述目标边缘节点的第二上报数据,其中,所述第二上报数据用于指示所述目标边缘节点从所述cdn节点下载所述目标文件中部分数据的传输状态;在所述第二上报数据中的传输状态满足第一切换条件的情况下,发送所述多个待访问节点中的家庭节点和所述cdn节点的访问地址至所述目标边缘节点,以使所述目标边缘节点按照访问地址从所述家庭节点和cdn节点下载所述目标文件中的部分数据,其中,所述目标节点包括家庭节点和cdn节点。
92.具体地,由于cdn节点的数据传输速率大于家庭节点的数据传输速率,因此,为了加快对文件拉取请求的响应速度,首先先将多个待访问节点中的cdn节点的访问地址发送至目标边缘节点,使目标边缘节点先从cdn节点下载目标文件中的部分数据,在cdn节点返回数据至目标边缘节点之后,目标边缘节点根据cdn节点返回数据的传输状态生成第二上报数据,目标边缘节点并及时发送第二上报数据至调度系统,以告知调度系统cdn节点对目标边缘节点的服务状态。
93.调度系统根据第二上报数据确定cdn节点返回数据的传输状态满足第一切换条件的情况下,则将多个待访问节点中的家庭节点和cdn节点的访问地址发送给目标边缘节点,使目标边缘节点按照调度系统为其分配的节点下载目标文件中未下载的部分数据,即此时目标边缘节点将仅从cdn节点下载数据切换为同时从家庭节点和cdn节点下载数据,以增加多种下载途径获取目标文件中的部分数据,提高了下载效率。
94.在一个实施例中,所述发送所述家庭节点和所述cdn节点的访问地址至所述目标边缘节点之后,所述方法还包括:
95.接收所述目标边缘节点的第三上报数据,其中,所述第三上报数据用于指示所述目标边缘节点从所述家庭节点和cdn节点获取所述目标文件中部分数据的传输状态;在所述第三上报数据中的传输状态满足第二切换条件的情况下,发送所述多个待访问节点中的家庭节点的访问地址至所述目标边缘节点,以使所述目标边缘节点按照访问地址从所述家庭节点下载所述目标文件中的部分数据,其中,所述目标节点包括家庭节点。
96.具体地,调度系统将多个待访问节点中的家庭节点和cdn节点的访问地址发送给目标边缘节点之后,目标边缘节点根据cdn节点返回数据的传输状态以及家庭节点返回数据的传输状态生成第三上报数据,目标边缘节点发送第三上报数据至调度系统,以告知调度系统cdn节点和家庭节点对目标边缘节点的服务状态。
97.调度系统根据第三上报数据确定家庭节点返回数据的传输状态满足第二切换条件的情况下,则将多个待访问节点中的家庭节点的访问地址发送给目标边缘节点,使目标边缘节点按照调度系统为其分配的家庭节点下载目标文件中未下载的部分数据,即此时目标边缘节点将同时从家庭节点和cdn节点下载数据切换为仅从家庭节点下载数据,在确保满足目标边缘节点的下载要求的情况下,禁止目标边缘节点从cdn节点下载数据,让目标边缘节点仅从多个家庭节点同时下载数据,提高下载效率的同时还最大程度的降低成本。
98.同理,若后续调度系统接收到目标边缘节点的上报数据指示数据的传输状态不满足第二切换条件,则使目标边缘节点从多个家庭节点下载数据切换为同时从cdn节点和家庭节点下载数据;若上报数据指示传输状态不满足第一切换条件,则使目标边缘节点同时从cdn节点和家庭节点下载数据切换为仅从cdn节点下载数据。
99.图2和图3为一个实施例中数据下载方法的流程示意图。应该理解的是,虽然图2和图3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2和图3中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
100.在一个实施例中,如图4所示,提供了一种数据下载装置,包括:
101.请求模块410,用于向调度系统发送文件拉取请求,其中,所述文件拉取请求用于目标边缘节点请求下载目标文件;
102.第一接收模块420,用于接收所述调度系统返回的响应信息,其中,所述响应信息包括多个待访问节点的访问地址以及所述目标文件在所述待访问节点中的存储状态,所述多个待访问节点为保存有所述目标文件或所述目标文件中的部分数据的节点;
103.请求拆分模块430,用于根据所述目标文件在所述多个待访问节点中的存储状态生成多个下载请求,其中,每个所述下载请求用于从一个待访问节点下载所述目标文件中的部分数据,任意两个所述下载请求所请求下载的数据不同;
104.下载模块440,用于将每个所述下载请求发送至所述多个待访问节点中与所述下载请求中访问地址匹配的目标节点,以从所述目标节点下载所述目标文件中的部分数据。
105.在一个实施例中,所述请求拆分模块430还用于:
106.在所述待访问节点的存储状态为下载中的情况下,根据所述待访问节点对于所述
目标文件已缓存的部分数据,生成对应的第四请求,其中,所述下载请求包括所述第四请求,所述第四请求用于请求下载所述待访问节点中对于所述目标文件已缓存的部分数据;
107.在所述待访问节点的存储状态为缓存完成的情况下,根据所述目标文件中未生成下载请求的部分数据,生成对应的第五请求,其中,所述下载请求包括所述第五请求,所述第五请求用于请求下载所述目标文件中与所述第五请求对应的部分数据。
108.在一个实施例中,所述下载模块440还用于:
109.将第一请求按照访问地址发送至相应的家庭节点,以从家庭节点下载所述目标数据中的部分数据,其中,所述多个下载请求包括所述第一请求,所述第一请求为所述第四请求或所述第五请求,所述目标节点包括所述家庭节点;或,
110.将所述第一请求按照访问地址发送至相应的家庭节点,并将所述多个下载请求中的第二请求按照访问地址发送至相应的cdn节点,以从家庭节点和cdn节点下载所述目标数据中的部分数据,其中,所述目标节点包括家庭节点和cdn节点,所述第二请求为所述第四请求或所述第五请求。
111.在一个实施例中,所述下载模块440还用于:
112.在从家庭节点下载所述目标数据中的部分数据或从家庭节点和cdn节点下载所述目标数据中的部分数据之前,将所述下载请求中的第三请求按照访问地址发送至相应的cdn节点,以从所述cdn节点下载所述目标文件中的部分数据;
113.在接收到所述cdn节点返回的数据,根据所述cdn节点返回数据的传输状态,确定对应的第一切换条件;
114.其中,在满足所述第一切换条件的情况下,切换为从家庭节点下载数据或从家庭节点和cdn节点下载数据。
115.所述下载模块440还用于:
116.在从所述cdn节点返回数据的传输速率大于或等于第一速率的情况下,切换为从家庭节点和cdn节点下载数据,其中,所述第一切换条件包括传输速率大于或等于第一速率,第一速率用于指示所述下载切换条件的切换标准。
117.在一个实施例中,所述切换为从家庭节点和cdn节点下载数据之后,所述下载模块440还用于:
118.在接收到所述家庭节点返回的数据的情况下,根据所述家庭节点返回数据的传输状态,确定对应的第二切换条件;
119.在满足所述第二切换条件的情况下,切换为仅从所述家庭节点下载数据。
120.在一个实施例中,所述下载模块440还用于:
121.在从所述家庭节点返回数据的传输速率大于或等于第二速率的情况下,切换为仅从所述家庭节点下载数据,其中,所述第二切换条件包括传输速率大于或等于第二速率,第二速率用于指示所述第二切换条件的切换标准。
122.在一个实施例中,所述下载模块440还用于:
123.按照p2p数据传输方式从家庭节点下载所述目标文件中的部分数据。
124.在一个实施例中,参照图5,本实施例提供了一种数据下载装置,所述装置包括:
125.第二接收模块510,用于接收多个边缘节点的第一上报数据,其中,所述第一上报数据用于指示节点的服务状态;接收目标边缘节点的文件拉取请求,其中,所述文件拉取请
求用于请求下载目标文件;
126.节点调度模块520,用于根据所述多个边缘节点的第一上报数据,为所述目标边缘节点分配响应所述文件拉取请求的多个待访问节点,所述多个待访问节点为保存有所述目标文件或所述目标文件中部分数据的节点;
127.响应模块530,用于将所述目标文件在所述多个待访问节点中的存储状态以及所述多个待访问节点的访问地址,作为响应信息返回至所述目标边缘节点,以使所述目标边缘节点按照访问地址从所述多个待访问节点中的目标节点下载所述目标文件中的部分数据。
128.在一个实施例中,所述响应模块530还用于:
129.将所述多个待访问节点中的cdn节点的访问地址发送至所述目标边缘节点,以使所述目标边缘节点从所述cdn节点下载所述目标文件中的部分数据,其中,所述目标节点包括cdn节点;
130.接收所述目标边缘节点的第二上报数据,其中,所述第二上报数据用于指示所述目标边缘节点从所述cdn节点下载所述目标文件中部分数据的传输状态;
131.在所述第二上报数据中的传输状态满足第一切换条件的情况下,发送所述多个待访问节点中的家庭节点和所述cdn节点的访问地址至所述目标边缘节点,以使所述目标边缘节点按照访问地址从所述家庭节点和cdn节点下载所述目标文件中的部分数据,其中,所述目标节点包括家庭节点和cdn节点。
132.在一个实施例中,所述发送所述家庭节点和所述cdn节点的访问地址至所述目标边缘节点之后,所述响应模块530还用于:
133.接收所述目标边缘节点的第三上报数据,其中,所述第三上报数据用于指示所述目标边缘节点从所述家庭节点和cdn节点获取所述目标文件中部分数据的传输状态;
134.在所述第三上报数据中的传输状态满足第二切换条件的情况下,发送所述多个待访问节点中的家庭节点的访问地址至所述目标边缘节点,以使所述目标边缘节点按照访问地址从所述家庭节点下载所述目标文件中的部分数据,其中,所述目标节点包括家庭节点。
135.图6示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的家庭节点110(或调度系统130)。如图6所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现数据下载方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行数据下载方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
136.本领域技术人员可以理解,图6中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
137.在一个实施例中,本技术提供的数据下载装置可以实现为一种计算机程序的形式,计算机程序可在如图6所示的计算机设备上运行。计算机设备的存储器中可存储组成该
数据下载装置的各个程序模块,比如,图4所示的请求模块410、第一接收模块420、请求拆分模块430和下载模块440。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本技术各个实施例的数据下载方法中的步骤。
138.图6所示的计算机设备可以通过如图4所示的数据下载装置中的请求模块410执行向调度系统发送文件拉取请求,其中,所述文件拉取请求用于目标边缘节点请求下载目标文件。计算机设备可通过第一接收模块420执行接收所述调度系统返回的响应信息,其中,所述响应信息包括多个待访问节点的访问地址以及所述目标文件在所述待访问节点中的存储状态,所述多个待访问节点为保存有所述目标文件或所述目标文件中的部分数据的节点。计算机设备可通过请求拆分模块430执行根据所述目标文件在所述多个待访问节点中的存储状态生成多个下载请求,其中,每个所述下载请求用于从一个待访问节点下载所述目标文件中的部分数据,任意两个所述下载请求所请求下载的数据不同。计算机设备可通过下载模块440执行将每个所述下载请求发送至所述多个待访问节点中与所述下载请求中访问地址匹配的目标节点,以从所述目标节点下载所述目标文件中的部分数据。
139.在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述任一项实施例所述的方法。
140.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任一项实施例所述的方法。
141.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指示相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双倍速率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
142.需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
143.以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一
致的最宽的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献