CN102420863A - 一种快速分发文件系统和方法及装置 - Google Patents

一种快速分发文件系统和方法及装置 Download PDF

Info

Publication number
CN102420863A
CN102420863A CN2011103905897A CN201110390589A CN102420863A CN 102420863 A CN102420863 A CN 102420863A CN 2011103905897 A CN2011103905897 A CN 2011103905897A CN 201110390589 A CN201110390589 A CN 201110390589A CN 102420863 A CN102420863 A CN 102420863A
Authority
CN
China
Prior art keywords
server
instruction
upload
task
node server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2011103905897A
Other languages
English (en)
Other versions
CN102420863B (zh
Inventor
刘浩
王燕
苗权
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Blue It Technologies Co ltd
Original Assignee
Beijing Blue It Technologies Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Blue It Technologies Co ltd filed Critical Beijing Blue It Technologies Co ltd
Priority to CN201110390589.7A priority Critical patent/CN102420863B/zh
Publication of CN102420863A publication Critical patent/CN102420863A/zh
Application granted granted Critical
Publication of CN102420863B publication Critical patent/CN102420863B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种快速分发文件系统和方法及装置,包括:上传服务器用于在自身能接受任务安排时向中央服务器发送申请领取任务指令;并从上传服务器获取任务领取指令中指示的上传文件并存储到存储设备中;中央服务器用于接收所述上传任务信息,生成对应的任务领取指令并保存;以及在收到一个节点服务器发送的申请领取任务指令后,将所述任务领取指令发送给最早发送申请领取任务指令的节点服务器,各边缘节点根据用户请求在存储设备中获取所述上传文件。本发明通过增加节点服务器,将文件分发到各区域存储器中,以分担上传服务器的负载,并且支持UDT传输协议,提供了高效可靠的数据传输能力。

Description

一种快速分发文件系统和方法及装置
技术领域
本发明涉及互联网CDN(Content Delivery Network,内容分发网络)网络领域,尤其涉及一种快速分发文件系统和方法及装置。
背景技术
随着互联网技术的飞速发展,越来越多的信息如影视、音乐等逐渐以网络作为传播的媒介。这些网络资源往往以较大的文件形式出现,供用户下载。然而,互联网创建之初由于缺乏专门的管理机构和统一的技术标准,造成了如今众多不同网络结构并存的局面,而且不同网络间的兼容以及不同网络运营商/ISP之间的传输瓶颈等问题使得数据的流通受到限制。内容分发网络(CDN,Content Distribution Network)的诞生提供了解决这些问题的有效办法,即通过在现有的互联网基础之上建立一层虚拟的内容分布网络,来稳定高效地将内容分发给互联网用户。
具体来说,CDN的技术原理是:首先,通过在全国各地部署若干节点,并将这些节点通过互联网络相互连接,形成分发网络;然后,选择距离互联网内容提供商(ICP,Internet Content Provider)最近或者连接情况最好的一个或者多个节点,从ICP站点上取得数据,并通过建立好的分发网络,推送到最接近用户的边缘节点上;最后,用户便可以通过就近的节点访问到所需的内容。因此,对于ISP,由于所有的用户请求都被自动定向到了离用户最近的节点(通常会选择放在该ISP网络内),减少了由于距离和路由器转接造成的延迟,提高用户访问时的响应时间。并且,由于用户的访问不用通过不同网络服务商之间来回移动(通常是网络中的瓶颈),所以对于网络服务商/ISP能够节省大量的广域网的出口带宽。这样,在有限的带宽情况下,既可以提高对用户的响应速度,同时也能为更多的用户提供更多的服务。
但是,当一个较大的文件要通过网络向位置分散的用户分发时,系统会把要发布的文件上传到Web服务器或FTP服务器上,然后通知用户从该服务器下载文件。该服务器承担了全部的上传开销,它的处理能力和传输速率是影响文件分发速度的瓶颈。随着用户数量的增多,每个用户可获得的下载速度降低,同时服务器负载也会过大。因此很多服务器都会限制用户人数和下载速度,给用户带来诸多不便。而且,随着连接网络的终端数量急剧增加和网络结构的多样化与复杂化,传统的集中式文件分发模式面临着伸缩性、连接突发性、可控性和可靠性等问题,因此研发出新的应用模式系统成为当务之急。
发明内容
针对上述技术方案中的缺点,本发明提供一种分布式文件分发模式,支持海量数据传输,并且具有可扩展性和灵活性的快速分发文系统和方法及装置。
本发明提供了一种快速分发文件系统,包括:
至少一个上传服务器,用于缓存上传文件,并生成对应于所述上传文件的上传任务信息发送给中央服务器;
至少两个节点服务器,用于在自身能接受任务安排时,向所述中央服务器发送申请领取任务指令;以及当接收到所述中央服务器反馈的任务领取指令时,根据所述任务领取指令从相应上传服务器中获取相关上传文件并存储到存储设备中;
至少一个存储设备,用于存储同一地理区域内各所述节点服务器获取的所述上传文件;
至少一个边缘节点服务器,用于获取所述存储设备存储的上传文件;
中央服务器,用于接收所述上传任务信息,生成对应的任务领取指令并保存;以及接收所述节点服务器发送的申请领取任务指令并生成领取记录;且在一个节点服务器发送所述申请领取任务指令后,将所述任务领取指令发送给一个发送申请领取任务指令的节点服务器,仅当所述节点服务器完成领取任务后,将本次任务领取指令发送到的节点服务器对应的领取记录修改为已经领取。
本发明还提供一种节点服务器,包括:
发送单元,用于在判断自身能接受任务安排时,向中央服务器发送申请领取任务指令;
接收单元,用于接收所述中央服务器反馈的任务领取指令;
获取存储单元,用于根据接收的任务获取指令从相应上传服务器中获取相关上传文件,并存储到位于同一地理区域的存储设备中。
本发明还提供一种中央服务器,包括:
第一单元,用于接收上传服务器根据本地缓存的上传文件生成并发送的上传任务信息,生成对应任务领取指令并保存;以及,接收节点服务器发送的申请领取任务指令并生成领取记录;
第二单元,用于在所述第一单元接收到一个节点服务器发送的所述申请领取任务指令后,将所述任务领取指令发送给一个发送申请领取任务指令的节点服务器,仅当所述节点服务器完成领取任务后,将本次任务领取指令发送到的节点服务器对应的领取记录修改为已经领取。
本发明还提供一种快速分发文件方法,包括:
由上传服务器缓存上传文件,并生成对应于所述上传文件的上传任务信息,发送给中央服务器;
由所述中央服务器接收所述上传任务信息,生成对应的任务领取指令并保存;
当节点服务器在自身能接受任务安排时,向所述中央服务器发送申请领取任务指令;
所述中央服务器接收所述节点服务器发送的申请领取任务指令并生成领取记录,且在收到一个节点服务器发送的申请领取任务指令后,将所述任务领取指令发送给一个发送申请领取任务指令的节点服务器仅当所述节点服务器完成领取任务后,将本次任务领取指令发送到的节点服务器对应的领取记录修改为已经领取;
接收到任务领取指令的节点服务器,根据所述任务领取指令从相应上传服务器中获取相关上传文件,并存储到位于同一地理区域的存储设备中。
本发明与现有技术相对比,具有以下优点:
本发明提供了一种快速分发文件系统和方法及装置,其中,本发明可以周期性向中央服务器发送自身的工作状态信息,使中央服务器可以掌握各节点服务器的工作状态,均衡其工作情况,并且当节点服务器自身空闲时,会主动向中央服务器发起申请领取任务指令,通知中央服务器为其安排任务;本发明通过中央服务器调配多个节点服务器分担上传服务器的负载,提高了文件传输的速度;另外,本发明支持UDT传输协议,提供高效可靠的数据传输能力;尤其对于10G以上的大文件,可在短时间内分发完毕,并且还支持API格式的文件上传,并具传输过程有高效性与可靠性。
附图说明
图1为本发明系统的实施例一的结构框图;
图2为本发明系统的实施例二的结构框图;
图3为本发明系统的实施例三的结构图;
图4为本发明节点服务器的实施例一的结构框图;
图5为本发明节点服务器的实施例二的结构框图;
图6为本发明中央服务器的实施例一的结构框图;
图7为本发明方法的实施例一的流程图;
图8为本发明方法的实施例二的流程图。
具体实施方式
本发明提供一种分布式文件分发模式,支持海量数据传输,并且具有可扩展性和灵活性的快速分发文件系统和方法及装置。
本发明提供了一种快速分发文件系统,包括:
至少一个上传服务器,用于缓存上传文件,并生成对应于所述上传文件的上传任务信息发送给中央服务器;
至少两个节点服务器,用于在自身能接受任务安排时,向所述中央服务器发送申请领取任务指令;以及当接收到所述中央服务器反馈的任务领取指令时,根据所述任务领取指令从相应上传服务器中获取相关上传文件并存储到存储设备中;
至少一个存储设备,用于存储同一地理区域内各所述节点服务器获取的所述上传文件;
至少一个边缘节点服务器,用于获取所述存储设备存储的上传文件;
中央服务器,用于接收所述上传任务信息,生成对应的任务领取指令并保存;以及接收所述节点服务器发送的申请领取任务指令并生成领取记录;且在一个节点服务器发送所述申请领取任务指令后,将所述任务领取指令发送给一个发送申请领取任务指令的节点服务器,仅当所述节点服务器完成领取任务后,将本次任务领取指令发送到的节点服务器对应的领取记录修改为已经领取。
所述中央服务器具体用于:
将所述任务领取指令发送给最早发送所述申请领取任务指令的节点服务器;或者,
将所述任务领取指令发送给每个设备组中最早发送所述申请领取任务指令的节点服务器;所述设备组中包含同一地理区域中的节点服务器;
当指定的不同地理区域对应的设备组内的节点服务器均完成领取任务后,将本次任务领取指令发送到的节点服务器对应的领取记录修改为已经领取。
所述中央服务器,还用于:
接收到所述上传任务信息后,生成并发送文件完整性校验指令给所述上传服务器,并接收所述上传服务器反馈的校验信息;并仅在所述校验信息表示校验成功时,生成对应的任务领取指令并发送;
所述上传服务器,还用于:
接收所述中央服务器发送的文件完整性校验指令,并对所述上传文件进行完整性校验,并将所述校验信息反馈给所述中央服务器。
所述节点服务器,还用于:对当前获取的上传文件进行校验,并将校验结果发送给所述中央服务器;以及接收所述中央服务器发送的重新获取指令后,再次从所述上传服务器中获取所述上传文件并存储到所述存储设备中;
所述中央服务器,还用于:接收所述节点服务器发送的校验结果,当校验结果为校验失败时,向所述节点服务器发送重新获取指令。
该系统中,所述存储设备,还用于:
接收与用户终端交互的网络边缘节点传送的文件获取请求,从本地存储的各上传文件中,查找出请求获取的对应文件并传送给所述网络边缘节点。
本发明还提供一种节点服务器,包括:
发送单元,用于在判断自身能接受任务安排时,向中央服务器发送申请领取任务指令;
接收单元,用于接收所述中央服务器反馈的任务领取指令;
获取存储单元,用于根据接收的任务获取指令从相应上传服务器中获取相关上传文件,并存储到位于同一地理区域的存储设备中。
所述节点服务器,还包括:
校验单元,用于对当前获取的上传文件进行校验并生成校验结果;
所述发送单元,还用于将所述校验单元生成的校验结果发送给所述中央服务器;
所述接收单元,还用于接收所述中央服务器在接收到校验结果为校验失败时发送的重新获取指令;
所述获取存储单元,还用于在所述接收单元接收到所述中央服务器发送的重新获取指令后,再次从所述上传服务器中获取所述上传文件并存储到所述存储设备中。
本发明还提供一种中央服务器,包括:
第一单元,用于接收上传服务器根据本地缓存的上传文件生成并发送的上传任务信息,生成对应任务领取指令并保存;以及,接收节点服务器发送的申请领取任务指令并生成领取记录;
第二单元,用于在所述第一单元接收到一个节点服务器发送的所述申请领取任务指令后,将所述任务领取指令发送给一个发送申请领取任务指令的节点服务器,仅当所述节点服务器完成领取任务后,将本次任务领取指令发送到的节点服务器对应的领取记录修改为已经领取。
该中央服务器中,所述第二单元具体用于:
将所述任务领取指令发送给最早发送所述申请领取任务指令的节点服务器;或者,
将所述任务领取指令发送给每个设备组中最早发送所述申请领取任务指令的节点服务器;所述设备组中包含同一地理区域中的节点服务器;当指定的不同地理区域对应的设备组内的节点服务器均完成领取任务后,将本次任务领取指令发送到的节点服务器对应的领取记录修改为已经领取。
该中央服务器,还包括:
第三单元,用于在所述第一单元接收所述上传服务器发送的所述上传任务信息之后,生成并发送文件完整性校验指令给所述上传服务器;
第四单元,用于接收所述上传服务器反馈的校验信息;并仅在所述校验信息表示校验成功时,指示所述第一单元生成对应的任务领取指令并保存。
该中央服务器,还包括:
第五单元,用于接收所述节点服务器发送的自身对当前获取的上传文件进行校验的校验结果,当校验结果表明为校验失败时,向所述节点服务器发送重新获取指令。
本发明还提供了一种快速分发文件方法,该方法包括:
由上传服务器缓存上传文件,并生成对应于所述上传文件的上传任务信息,发送给中央服务器;
由所述中央服务器接收所述上传任务信息,生成对应的任务领取指令并保存;
当节点服务器在自身能接受任务安排时,向所述中央服务器发送申请领取任务指令;
所述中央服务器接收所述节点服务器发送的申请领取任务指令并生成领取记录,且在收到一个节点服务器发送的申请领取任务指令后,将所述任务领取指令发送给一个发送申请领取任务指令的节点服务器仅当所述节点服务器完成领取任务后,将本次任务领取指令发送到的节点服务器对应的领取记录修改为已经领取;
接收到任务领取指令的节点服务器,根据所述任务领取指令从相应上传服务器中获取相关上传文件,并存储到位于同一地理区域的存储设备中。
该方法中,所述将任务领取指令发送给一个发送申请领取任务指令的节点服务器,具体为:
将任务领取指令发送给最早发送申请领取任务指令的节点服务器;或者
将所述任务领取指令发送给每个设备组中最早发送申请领取任务指令的节点服务器;所述设备组中包含同一地理区域中的节点服务器。
该方法中,由所述中央服务器接收所述上传任务信息,生成对应的任务领取指令并保存,具体包括:
所述中央服务器接收所述上传信息后,生成并发送文件完整性校验指令给所述上传服务器;
所述上传服务器接收到所述中央服务器发送的文件完整性校验指令后,对所述上传文件进行完整性校验,并将所述校验信息反馈给所述中央服务器;
所述中央服务器在判断所述校验信息表示校验成功时,生成对应的任务领取指令并保存。
该方法中,所述节点服务器将获取的上传文件存储到存储设备中之后,还包括:
对当前获取的上传文件进行校验,并将校验结果发送给所述中央服务器;
接收所述中央服务器根据所述校验结果为校验失败时发送的重新获取指令后,再次从所述上传服务器中获取所述上传文件并存储到存储设备中。
下面结合具体实施例及附图对本发明进行详细的描述。
如图1所示,为本发明系统的实施例一的结构框图,包括:
上传服务器2缓存上传文件,并生成对应于所述上传文件的上传任务信息发送给中央服务器1;中央服务器1在接收到所述上传任务信息后,生成并发送文件完整性校验指令给上传服务器2,并接收上传服务器2反馈的校验信息;并仅在所述校验信息表示校验成功时,生成对应的任务领取指令并保存,节点服务器31以及节点服务器32在自身能接受任务安排时向中央服务器1发送申请领取任务指令;中央服务器1在收到节点服务器31及节点服务器32发送的申请领取任务指令后,将所述任务领取指令发送给最早发送申请领取任务指令的节点服务器31,仅当所述节点服务器31完成领取任务后,将本次任务领取指令发送到的节点服务器对应的领取记录修改为已经领取;节点服务器31当接收到中央服务器1反馈的任务领取指令时,从上传服务器2获取所述任务领取指令中指示的上传文件,并对当前获取的上传文件进行校验,并将校验结果发送给中央服务器1,将校验结果成功的上传文件存储到存储设备4中,当校验结果为校验失败时,中央服务器1向节点服务器31发送重新获取指令,重复前面的步骤;其中,存储设备4存储同一地理区域内节点服务器31获取的文件,存储设备4还可以接收与用户终端6(参照图3)交互的网络边缘节点传送的文件获取请求,从本地存储的各上传文件中,查找出请求获取的对应文件并传送给所述网络边缘节点。
如图2所示,为本发明系统的实施例二的结构框图,包括:在同一区域的设备组一与设备组二,其中设备组一内包含节点服务器311、节点服务器312、节点服务器313、存储设备41以及设备组二内包含节点服务器321、节点服务器322、节点服务器323、存储设备42。上传服务器2缓存上传文件,并生成对应于所述上传文件的上传任务信息发送给中央服务器1,中央服务器1在接收到所述上传任务信息后,生成并发送文件完整性校验指令给上传服务器2,并接收上传服务器2反馈的校验信息;并仅在所述校验信息表示校验成功时,生成对应的任务领取指令,节点服务器312以及节点服务器321在自身能接受任务安排时向中央服务器1发送申请领取任务指令;中央服务器1在收到节点服务器311、节点服务器312及节点服务器321、节点服务器322发送的申请领取任务指令后,将所述任务领取指令发送给设备组一中最早发送申请领取任务指令的节点服务器312以及设备组二中的节点服务器321,当指定的不同地理区域对应的设备组内的节点服务器均完成领取任务后,将本次任务领取指令发送到的节点服务器312及节点服务器321对应的领取记录修改为已经领取;设备组一中的节点服务器312以及设备组二中的节点服务器321当接收到中央服务器1反馈的任务领取指令时,从上传服务器2获取所述任务领取指令中指示的上传文件,并对当前获取的上传文件进行校验,并将校验结果发送给中央服务器1,将校验结果为成功的文件存储到存储设备4中,当校验结果为校验失败时,中央服务器1向节点服务器31发送重新获取指令,重复前面的步骤;当接收到的文件为超大文件时,由于一个节点服务器不能独立完成领取,则有同一设备组中的其他节点服务器共同完成,同样需发送所述任务领取指令,按照中央服务器的指令进行任务领取,领取方法同前述,在此不再重复。然后,设备组一中的节点服务器312以及设备组二中的节点服务器321将获取的上传文件分别存储到存储设备41及存储设备42中,存储设备41及存储设备42还可以接收与用户终端交互的网络边缘节点传送的文件获取请求,从本地存储的各上传文件中,查找出请求获取的对应文件并传送给所述网络边缘节点。
图3为本发明系统的实施例三的结构图,包含:
上传服务器2缓存所述上传文件,并生成对应于所述上传文件的上传任务信息发送给中央服务器1;中央服务器1接收所述上传任务信息并生成对应的任务领取指令并保存;节点服务器3在自身能接受任务安排时向中央服务器1发送申请领取任务指令;中央服务器1在收到节点服务器3发送的申请领取任务指令后,将所述任务领取指令发送给最早发送申请领取任务指令的其中一个节点服务器31;节点服务器31当接收到中央服务器1反馈的任务领取指令时,从上传服务器2获取所述任务领取指令中指示的上传文件并存储到存储设备4中;存储设备4与网络的Cache服务器5连接,用户终端6通过Cache服务器5访问存储设备4存储的文件。其中,中央服务器1与该系统的中间设备20保持通信,中央服务器1包括:数据库11存放数据信息,包括:用于记录各个任务的信息表,用户校验表以及任务获取与节点服务器对应关系表;信息管理单元12,用于负责任务与设备的管理以及设备的各个工作状态的展示,包括获取任务状态(上传中、校验中、分发中、可服务、上传失败、校验失败、分发失败、删除中、已删除、重命名中、重命名失败等状态),分发任务节点状态(中央队列中、节点服务器抓取中、校验中、解压中、分发完成、抓取失败、校验失败、解压失败),删除任务状态(删除中、删除完成状态),重命名任务状态(重命名中、重命名完成、重命名失败),还负责汇报任务分发、删除、重命名等操作状态,方便管理员查阅任务信息情况,出现异常时可及时有效地定位问题所在并及时处理问题;通信管理单元13,为整个快速分发文件系统提供良好的通信机制,使得运行在不同操作系统并使用不同技术和编程语言的应用程序可以互相进行通信,是整个快速分发文件系统各个环节之间进行通信的保障。
如图4所示,为本发明节点服务器的实施例一的结构框图,包括:
发送单元71,用于在判断自身能接受任务安排时,向中央服务器发送申请领取任务指令;
接收单元72,用于接收所述中央服务器反馈的任务领取指令;
获取存储单元73,用于根据接收的任务获取指令从相应上传服务器中获取相关上传文件,并存储到位于同一地理区域的存储设备中。
如图5所示,为本发明节点服务器的实施例二的结构框图,包括:
发送单元71,用于在判断自身能接受任务安排时,向中央服务器发送申请领取任务指令;还用于将所述校验单元生成的校验结果发送给所述中央服务器;
接收单元72,用于接收所述中央服务器反馈的任务领取指令;当所述校验单元校验生成的校验结果为不成功时,还用于接收所述中央服务器在接收到校验结果为校验失败时发送的重新获取指令;
获取存储单元73,用于从上传服务器获取所述任务领取指令中指示的上传文件并存储到存储设备中;还用于,在所述接收单元接收到所述中央服务器发送的重新获取指令后,再次从所述上传服务器中获取所述上传文件并存储到存储设备中;
校验单元74,用于对当前获取的上传文件进行校验并生成校验结果。
如图6所示,为本发明中央服务器的实施例一的结构框图,包括:
第一单元81,用于接收上传服务器根据本地缓存的上传文件生成并发送的上传任务信息,生成对应任务领取指令并保存;以及,接收节点服务器发送的申请领取任务指令并生成领取记录;
第二单元82,用于在所述第一单元接收到一个节点服务器发送的所述申请领取任务指令后,将所述任务领取指令发送给一个发送申请领取任务指令的节点服务器,仅当所述节点服务器完成领取任务后,将本次任务领取指令发送到的节点服务器对应的领取记录修改为已经领取。
第三单元83,用于在所述第一单元接收上传服务器发送的所述上传任务信息之后,生成并发送文件完整性校验指令给所述上传服务器;
第四单元84,用于接收所述上传服务器反馈的校验信息;并仅在所述校验信息表示校验成功时,指示所述第一单元生成对应的任务领取指令并保存;
第五单元85,用于接收所述节点服务器发送的自身对当前获取的上传文件进行校验的校验结果,并校验结果表明为校验失败时,向所述节点服务器发送重新获取指令。
如图7所示,为本发明方法的实施例一的流程图;包括:
S1:由上传服务器缓存上传文件,并生成对应于所述上传文件的上传任务信息发送给中央服务器;
S2:由中央服务器接收所述上传任务信息并生成对应的任务领取指令并保存;
S3:当节点服务器在自身能接受任务安排时,向所述中央服务器发送申请领取任务指令;
S4:所述中央服务器接收所述节点服务器发送的申请领取任务指令并生成领取记录,且在收到节点服务器发送的申请领取任务指令后,将所述任务领取指令发送给一个发送申请领取任务指令的节点服务器;仅当所述节点服务器完成领取任务后,将本次任务领取指令发送到的节点服务器对应的领取记录修改为已经领取;
S5:接收到任务领取指令的节点服务器,根据所述任务领取指令从相应上传服务器中获取相关上传文件,并存储到位于同一地理区域的存储设备中。
图8为本发明方法的实施例二的流程图,包括:
S1:由上传服务器缓存上传文件,并生成对应于所述上传文件的上传任务信息发送给中央服务器;
S2:由中央服务器接收所述上传任务信息并生成对应的任务领取指令并保存;
S3:当节点服务器在自身能接受任务安排时,向所述中央服务器发送申请领取任务指令;
S42:将所述任务领取指令发送给每个设备组中最早发送申请领取任务指令的节点服务器;所述设备组中包含同一地理区域中的节点服务器;当指定的不同地理区域对应的设备组内的节点服务器均完成领取任务后,将本次任务领取指令发送到的节点服务器对应的领取记录修改为已经领取;
S5:接收到任务领取指令的节点服务器,根据所述任务领取指令从相应上传服务器中获取相关上传文件,并存储到位于同一地理区域的存储设备中。
本发明提供了一种快速分发文件系统和方法及装置,其中,本发明可以周期性向中央服务器发送自身的工作状态信息,使中央服务器可以掌握各节点服务器的工作状态,均衡其工作情况,并且当节点服务器自身空闲时,会主动向中央服务器发起申请领取任务指令,通知中央服务器为其安排任务;本发明通过中央服务器调配多个节点服务器分担上传服务器的负载,提高了文件传输的速度;另外,本发明支持UDT传输协议,提供高效可靠的数据传输能力;尤其对于10G以上的大文件,可在短时间内分发完毕,并且还支持API格式的文件上传,并具传输过程有高效性与可靠性。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (15)

1.一种快速分发文件系统,其特征在于,包括:
至少一个上传服务器,用于缓存上传文件,并生成对应于所述上传文件的上传任务信息发送给中央服务器;
至少两个节点服务器,用于在自身能接受任务安排时,向所述中央服务器发送申请领取任务指令;以及当接收到所述中央服务器反馈的任务领取指令时,根据所述任务领取指令从相应上传服务器中获取相关上传文件并存储到存储设备中;
至少一个存储设备,用于存储同一地理区域内各所述节点服务器获取的所述上传文件;
至少一个边缘节点服务器,用于获取所述存储设备存储的上传文件;
中央服务器,用于接收所述上传任务信息,生成对应的任务领取指令并保存;以及接收所述节点服务器发送的申请领取任务指令并生成领取记录;且在一个节点服务器发送所述申请领取任务指令后,将所述任务领取指令发送给一个发送申请领取任务指令的节点服务器,仅当所述节点服务器完成领取任务后,将本次任务领取指令发送到的节点服务器对应的领取记录修改为已经领取。
2.根据权利要求1所述的快速分发文件系统,其特征在于,所述中央服务器具体用于:
将所述任务领取指令发送给最早发送所述申请领取任务指令的节点服务器;或者
将所述任务领取指令发送给每个设备组中最早发送所述申请领取任务指令的节点服务器;所述设备组中包含同一地理区域中的节点服务器;
当指定的不同地理区域对应的设备组内的节点服务器均完成领取任务后,将本次任务领取指令发送到的节点服务器对应的领取记录修改为已经领取。
3.根据权利要求1所述的快速分发文件系统,其特征在于,所述中央服务器,还用于:
接收到所述上传任务信息后,生成并发送文件完整性校验指令给所述上传服务器,并接收所述上传服务器反馈的校验信息;并仅在所述校验信息表示校验成功时,生成对应的任务领取指令并发送;
所述上传服务器,还用于:
接收所述中央服务器发送的文件完整性校验指令,并对所述上传文件进行完整性校验,并将所述校验信息反馈给所述中央服务器。
4.根据权利要求1所述的快速分发文件系统,其特征在于,
所述节点服务器,还用于:对当前获取的上传文件进行校验,并将校验结果发送给所述中央服务器;以及接收所述中央服务器发送的重新获取指令后,再次从所述上传服务器中获取所述上传文件并存储到所述存储设备中;
所述中央服务器,还用于:接收所述节点服务器发送的校验结果,当校验结果为校验失败时,向所述节点服务器发送重新获取指令。
5.根据权利要求1所述的快速分发文件系统,其特征在于,所述存储设备,还用于:
接收与用户终端交互的网络边缘节点传送的文件获取请求,从本地存储的各上传文件中,查找出请求获取的对应文件并传送给所述网络边缘节点。
6.一种节点服务器,其特征在于,包括:
发送单元,用于在判断自身能接受任务安排时,向中央服务器发送申请领取任务指令;
接收单元,用于接收所述中央服务器反馈的任务领取指令;
获取存储单元,用于根据接收的任务获取指令从相应上传服务器中获取相关上传文件,并存储到位于同一地理区域的存储设备中。
7.根据权利要求6所述的节点服务器,其特征在于,还包括:
校验单元,用于对当前获取的上传文件进行校验并生成校验结果;
所述发送单元,还用于将所述校验单元生成的校验结果发送给所述中央服务器;
所述接收单元,还用于接收所述中央服务器在接收到校验结果为校验失败时发送的重新获取指令;
所述获取存储单元,还用于在所述接收单元接收到所述中央服务器发送的重新获取指令后,再次从所述上传服务器中获取所述上传文件并存储到所述存储设备中。
8.一种中央服务器,其特征在于,包括:
第一单元,用于接收上传服务器根据本地缓存的上传文件生成并发送的上传任务信息,生成对应任务领取指令并保存;以及,接收节点服务器发送的申请领取任务指令并生成领取记录;
第二单元,用于在所述第一单元接收到一个节点服务器发送的所述申请领取任务指令后,将所述任务领取指令发送给一个发送申请领取任务指令的节点服务器,仅当所述节点服务器完成领取任务后,将本次任务领取指令发送到的节点服务器对应的领取记录修改为已经领取。
9.根据权利要求8所述的中央服务器,其特征在于,所述第二单元具体用于:
将所述任务领取指令发送给最早发送所述申请领取任务指令的节点服务器;或者,
将所述任务领取指令发送给每个设备组中最早发送所述申请领取任务指令的节点服务器;所述设备组中包含同一地理区域中的节点服务器;当指定的不同地理区域对应的设备组内的节点服务器均完成领取任务后,将本次任务领取指令发送到的节点服务器对应的领取记录修改为已经领取。
10.根据权利要求8所述的中央服务器,其特征在于,还包括:
第三单元,用于在所述第一单元接收所述上传服务器发送的所述上传任务信息之后,生成并发送文件完整性校验指令给所述上传服务器;
第四单元,用于接收所述上传服务器反馈的校验信息;并仅在所述校验信息表示校验成功时,指示所述第一单元生成对应的任务领取指令并保存。
11.根据权利要求8所述的中央服务器,其特征在于,还包括:
第五单元,用于接收所述节点服务器发送的自身对当前获取的上传文件进行校验的校验结果,当校验结果表明为校验失败时,向所述节点服务器发送重新获取指令。
12.一种快速分发文件方法,其特征在于,包括:
由上传服务器缓存上传文件,并生成对应于所述上传文件的上传任务信息,发送给中央服务器;
由所述中央服务器接收所述上传任务信息,生成对应的任务领取指令并保存;
当节点服务器在自身能接受任务安排时,向所述中央服务器发送申请领取任务指令;
所述中央服务器接收所述节点服务器发送的申请领取任务指令并生成领取记录,且在收到一个节点服务器发送的申请领取任务指令后,将所述任务领取指令发送给一个发送申请领取任务指令的节点服务器仅当所述节点服务器完成领取任务后,将本次任务领取指令发送到的节点服务器对应的领取记录修改为已经领取;
接收到任务领取指令的节点服务器,根据所述任务领取指令从相应上传服务器中获取相关上传文件,并存储到位于同一地理区域的存储设备中。
13.根据权利要求12所述的快速分发文件方法,其特征在于,所述将任务领取指令发送给一个发送申请领取任务指令的节点服务器,具体为:
将任务领取指令发送给最早发送申请领取任务指令的节点服务器;或者,
将所述任务领取指令发送给每个设备组中最早发送申请领取任务指令的节点服务器;所述设备组中包含同一地理区域中的节点服务器。
14.根据权利要求12所述的快速分发文件方法,其特征在于,由所述中央服务器接收所述上传任务信息,生成对应的任务领取指令并保存,具体包括:
所述中央服务器接收所述上传信息后,生成并发送文件完整性校验指令给所述上传服务器;
所述上传服务器接收到所述中央服务器发送的文件完整性校验指令后,对所述上传文件进行完整性校验,并将所述校验信息反馈给所述中央服务器;
所述中央服务器在判断所述校验信息表示校验成功时,生成对应的任务领取指令并保存。
15.根据权利要求12所述的快速分发文件方法,其特征在于,所述节点服务器将获取的上传文件存储到存储设备中之后,还包括:
对当前获取的上传文件进行校验,并将校验结果发送给所述中央服务器;
接收所述中央服务器根据所述校验结果为校验失败时发送的重新获取指令后,再次从所述上传服务器中获取所述上传文件并存储到存储设备中。
CN201110390589.7A 2011-11-30 2011-11-30 一种快速分发文件系统和方法及装置 Active CN102420863B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110390589.7A CN102420863B (zh) 2011-11-30 2011-11-30 一种快速分发文件系统和方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110390589.7A CN102420863B (zh) 2011-11-30 2011-11-30 一种快速分发文件系统和方法及装置

Publications (2)

Publication Number Publication Date
CN102420863A true CN102420863A (zh) 2012-04-18
CN102420863B CN102420863B (zh) 2015-04-15

Family

ID=45945095

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110390589.7A Active CN102420863B (zh) 2011-11-30 2011-11-30 一种快速分发文件系统和方法及装置

Country Status (1)

Country Link
CN (1) CN102420863B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103685373A (zh) * 2012-09-10 2014-03-26 联想(北京)有限公司 数据上传装置和数据上传方法
CN104333584A (zh) * 2014-10-27 2015-02-04 深圳市东信时代信息技术有限公司 Cdn文件分发系统及方法
CN105516334A (zh) * 2015-12-25 2016-04-20 上海帝联信息科技股份有限公司 Cdn文件分发系统
CN105615832A (zh) * 2015-12-18 2016-06-01 深圳安泰创新科技股份有限公司 医疗影像数据采集方法及装置
CN106302578A (zh) * 2015-05-20 2017-01-04 无锡天脉聚源传媒科技有限公司 一种任务数据的发放方法、服务器及客户端
CN107705838A (zh) * 2017-09-30 2018-02-16 武汉联影医疗科技有限公司 一种医学影像的传输方法、装置、服务器、介质及系统
CN109194919A (zh) * 2018-09-19 2019-01-11 图普科技(广州)有限公司 一种摄像头数据流分配系统、方法及其计算机存储介质
CN114584552A (zh) * 2022-02-28 2022-06-03 西安交通大学 面向分布式ct文件传输的调度方法、系统、设备及介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1587279A2 (en) * 2004-04-16 2005-10-19 UTStarcom, Inc. Method and apparatus for a large scale distributed multimedia streaming system and its media content distribution
CN101005369A (zh) * 2006-01-19 2007-07-25 深圳市瑞福特信息技术有限公司 一种分布式内容分发网及分布式内容分发和上传的方法
CN101009568A (zh) * 2006-01-24 2007-08-01 腾讯科技(深圳)有限公司 一种p2p网络中实现数据下载的方法及系统
CN101355476A (zh) * 2008-05-23 2009-01-28 林云帆 一种基于服务器群集的数据文件存储、分发和应用的系统和方法
US20090055471A1 (en) * 2007-08-21 2009-02-26 Kozat Ulas C Media streaming with online caching and peer-to-peer forwarding
CN101604264A (zh) * 2009-07-08 2009-12-16 深圳先进技术研究院 超级计算机的任务调度方法及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1587279A2 (en) * 2004-04-16 2005-10-19 UTStarcom, Inc. Method and apparatus for a large scale distributed multimedia streaming system and its media content distribution
CN101005369A (zh) * 2006-01-19 2007-07-25 深圳市瑞福特信息技术有限公司 一种分布式内容分发网及分布式内容分发和上传的方法
CN101009568A (zh) * 2006-01-24 2007-08-01 腾讯科技(深圳)有限公司 一种p2p网络中实现数据下载的方法及系统
US20090055471A1 (en) * 2007-08-21 2009-02-26 Kozat Ulas C Media streaming with online caching and peer-to-peer forwarding
CN101355476A (zh) * 2008-05-23 2009-01-28 林云帆 一种基于服务器群集的数据文件存储、分发和应用的系统和方法
CN101604264A (zh) * 2009-07-08 2009-12-16 深圳先进技术研究院 超级计算机的任务调度方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
徐卓然: "支持卫星信息分发的并行多点传输", 《南华大学学报》 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103685373A (zh) * 2012-09-10 2014-03-26 联想(北京)有限公司 数据上传装置和数据上传方法
CN103685373B (zh) * 2012-09-10 2016-12-28 联想(北京)有限公司 数据上传装置和数据上传方法
CN104333584A (zh) * 2014-10-27 2015-02-04 深圳市东信时代信息技术有限公司 Cdn文件分发系统及方法
CN104333584B (zh) * 2014-10-27 2018-08-21 深圳市东信时代信息技术有限公司 Cdn文件分发系统及方法
CN106302578A (zh) * 2015-05-20 2017-01-04 无锡天脉聚源传媒科技有限公司 一种任务数据的发放方法、服务器及客户端
CN105615832A (zh) * 2015-12-18 2016-06-01 深圳安泰创新科技股份有限公司 医疗影像数据采集方法及装置
CN105516334A (zh) * 2015-12-25 2016-04-20 上海帝联信息科技股份有限公司 Cdn文件分发系统
CN105516334B (zh) * 2015-12-25 2019-01-18 上海帝联信息科技股份有限公司 Cdn文件分发系统
CN107705838A (zh) * 2017-09-30 2018-02-16 武汉联影医疗科技有限公司 一种医学影像的传输方法、装置、服务器、介质及系统
CN109194919A (zh) * 2018-09-19 2019-01-11 图普科技(广州)有限公司 一种摄像头数据流分配系统、方法及其计算机存储介质
CN114584552A (zh) * 2022-02-28 2022-06-03 西安交通大学 面向分布式ct文件传输的调度方法、系统、设备及介质

Also Published As

Publication number Publication date
CN102420863B (zh) 2015-04-15

Similar Documents

Publication Publication Date Title
CN102420863A (zh) 一种快速分发文件系统和方法及装置
CN103581245A (zh) 一种内容分发网络内容分发的方法及系统
CN104618164B (zh) 云计算平台应用快速部署的管理方法
CN105025053A (zh) 基于云存储技术的分布式文件的上传方法及其系统
CN105357296A (zh) 一种Docker云平台下弹性缓存系统
CN103152393A (zh) 一种云计算的计费方法和计费系统
CN101977236B (zh) 大文件多点分发系统
CN105607954A (zh) 一种有状态容器在线迁移的方法和装置
CN105207947B (zh) 一种过滤抖动的渐进式流量调度方法和系统
CN102469023A (zh) 基于云计算的调度方法、单元及系统
US8250171B2 (en) Content delivery apparatus, content delivery method, and content delivery program
CN101997924A (zh) 云存储文件传输协议(cftp)
CN102387220A (zh) 一种基于云存储的离线下载的方法及其系统
CN102200901A (zh) 图像转送方法、图像转送系统以及投影仪
CN103561049A (zh) 一种处理终端调度请求的方法、系统及装置
CN101662483A (zh) 云计算网络的缓存系统及其方法
CN102143237A (zh) 一种基于网格的互联网内容分发方法和系统
CN110138606A (zh) 容器网络配置方法及系统
CN113014611B (zh) 一种负载均衡方法及相关设备
KR20100060304A (ko) 네트워크 구조를 고려한 분산형 컨텐트 전달 시스템 및 그 방법
CN105068755A (zh) 一种面向云计算内容分发网络的数据副本存储方法
CN105408871A (zh) 用于提供冗余数据访问的方法和装置
CN104602035B (zh) 流媒体点播方法和流媒体点播系统
JP4815547B2 (ja) データ同期システム、データ同期方法、及び同期管理サーバ
CN106330994A (zh) 一种用户消息发布方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
PP01 Preservation of patent right
PP01 Preservation of patent right

Effective date of registration: 20220225

Granted publication date: 20150415