一种内容分发网络预热方法、系统、电子设备及存储介质技术方案

技术编号:32565998 阅读:15 留言:0更新日期:2022-03-09 16:51
本申请实施例公开了一种内容分发网络预热方法、系统、电子设备及存储介质。本申请实施例提供的技术方案,根据各个目标文件的文件尺寸,构建目标文件的各个分块文件的下载任务,为各个下载任务分配独立的文件下载线程;基于文件下载线程从云端并行下载多个分块文件,将对应的各个分块文件合并为一个目标文件;为各个目标文件分配独立的文件上传线程,基于文件上传线程将各个目标文件并行上传至内容分发网络节点。采用上述技术手段,可以缩短线程的运行周期,进而保障系统性能和内存的稳定性和灵活性,实现内容分发网络预热的灵活管理。实现内容分发网络预热的灵活管理。实现内容分发网络预热的灵活管理。

【技术实现步骤摘要】
一种内容分发网络预热方法、系统、电子设备及存储介质


[0001]本申请实施例涉及互联网
,尤其涉及一种内容分发网络预热方法、系统、电子设备及存储介质。

技术介绍

[0002]目前,互相网很多应用场景都涉及到内容分发网络(cdn,Content Delivery Network)的应用,通过构建内容分发网络节点,将云端存储的文件资源预先上传至内容分发网络节点,以便于用户直接就近访问内容分发网络节点的文件资源,而无需从云端进行文件资源访问,以此来优化用户体验,提升数据访问效率。在此背景下,为了确保用户能够直接通过内容分发网络节点下载文件资源,需要一个独立的预热服务节点从云端下载文件资源,并将文件资源上传至内容分发网络节点,即内容分发网络预热。
[0003]但是,传统的预热服务节点在进行内容分发网络预热时,其线程执行周期较长,容易影响预热服务的性能和内存,进而影响预热服务的稳定性。

技术实现思路

[0004]本申请实施例提供一种内容分发网络预热方法、系统、电子设备及存储介质,能够实现内容分发网络预热的灵活管理,提升预热服务性能和鲁棒性,解决内容分发网络预热服务不稳定的技术问题。
[0005]在第一方面,本申请实施例提供了一种内容分发网络预热方法,包括:
[0006]根据各个目标文件的文件尺寸分别构建所述目标文件的下载任务,或者所述目标文件的各个分块文件的下载任务,为各个所述下载任务分配独立的文件下载线程;
[0007]基于所述文件下载线程从云端并行下载所述目标文件或者多个所述分块文件,若所述文件下载线程下载的是所述分块文件,将对应的各个所述分块文件合并为一个所述目标文件;
[0008]为各个所述目标文件分配独立的文件上传线程,基于所述文件上传线程将各个所述目标文件并行上传至内容分发网络节点。
[0009]在第二方面,本申请实施例提供了一种内容分发网络预热系统,包括:
[0010]构建模块,用于根据各个目标文件的文件尺寸分别构建所述目标文件的下载任务,或者所述目标文件的各个分块文件的下载任务,为各个所述下载任务分配独立的文件下载线程;
[0011]下载模块,用于基于所述文件下载线程从云端并行下载所述目标文件或者多个所述分块文件,若所述文件下载线程下载的是所述分块文件,将对应的各个所述分块文件合并为一个所述目标文件;
[0012]上传模块,用于为各个所述目标文件分配独立的文件上传线程,基于所述文件上传线程将各个所述目标文件并行上传至内容分发网络节点。
[0013]在第三方面,本申请实施例提供了一种电子设备,包括:
[0014]存储器以及一个或多个处理器;
[0015]所述存储器,用于存储一个或多个程序;
[0016]当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的内容分发网络预热方法。
[0017]在第四方面,本申请实施例提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如第一方面所述的内容分发网络预热方法。
[0018]本申请实施例根据各个目标文件的文件尺寸,构建目标文件的各个分块文件的下载任务,为各个下载任务分配独立的文件下载线程;基于文件下载线程从云端并行下载多个分块文件,将对应的各个分块文件合并为一个目标文件;为各个目标文件分配独立的文件上传线程,基于文件上传线程将各个目标文件并行上传至内容分发网络节点。采用上述技术手段,通过文件分块并配置独立文件下载线程进行文件下载,可以缩短线程的运行周期,避免线程长期运行而导致内存占用的情况,进而保障系统性能和内存的稳定性和灵活性,实现内容分发网络预热的灵活管理。
附图说明
[0019]图1是本申请实施例提供的一种内容分发网络预热方法的流程图;
[0020]图2是本申请实施例中的下载任务构建流程图;
[0021]图3是本申请实施例中的文件合并流程图;
[0022]图4是本申请实施例中的内容分发网络预热流程图;
[0023]图5是本申请实施例提供的一种内容分发网络预热系统的结构示意图;
[0024]图6是本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
[0025]为了使本申请的目的、技术方案和优点更加清楚,下面结合附图对本申请具体实施例作进一步的详细描述。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
[0026]本申请提供的内容分发网络预热方法,旨在进行内容分发网络预热时,根据目标文件的文件尺寸适应性构建下载任务,对于文件尺寸较大的目标文件,通过文件切分,以根据各个分块文件进行文件下载线程的配置,并通过多个文件下载线程并行进行文件下载。以此可以缩短文件下载线程的运行周期,同时可以提升文件预热效率,避免系统内存长时间被占用。而对于传统的内容分发网络预热方式,其文件一般是整个下载、整个缓存以及整个上传的简单流程,当文件体积较大且数量较大的情况下,对于预热服务节点的性能和内存都是一个极大的考验,很容易导致数据积压乃至系统程序崩溃。以互联网内容分发应用
场景为例,整个文件需要下载完才上传到内容分发网络节点服务器,而且线程的运行周期是从文件下载开始到上传结束的,容易影响系统服务的灵活性。另一方面,由于预热的内容源巨大且相当一部分是大容量的视频资源,所以在上传完成前文件资源都会在预热节点的内存里整块保存,很可能导致服务内存溢出,从而造成系统崩溃,系统稳定性得不到保障的情况。基于此,提供本申请实施例的一种内容分发网络预热方法,以解决现有内容分发网络预热服务不稳定的技术问题。
[0027]实施例:
[0028]图1给出了本申请实施例提供的一种内容分发网络预热方法的流程图,本实施例中提供的内容分发网络预热方法可以由内容分发网络预热设备执行,该内容分发网络预热设备可以通过软件和/或硬件的方式实现,该内容分发网络预热设备可以是两个或多个物理实体构成,也可以是一个物理实体构成。一般而言,该内容分发网络预热设备可以是电脑,服务器主机等内容分发网络的预热节点设备。
[0029]下述以该内容分发网络预热设备为执行内容分发网络预热方法的主体为例,进行描述。参照图1,该内容分发网络预热方法具体包括:
[0030]S110、根据各个目标文件的文件尺寸,构建目标文件的各个分块文件的下载任务,为各个下载任务分配独立的文件下载线程。...

【技术保护点】

【技术特征摘要】
1.一种内容分发网络预热方法,其特征在于,包括:根据各个目标文件的文件尺寸,构建所述目标文件的各个分块文件的下载任务,为各个所述下载任务分配独立的文件下载线程;基于所述文件下载线程从云端并行下载多个所述分块文件,将对应的各个所述分块文件合并为一个所述目标文件;为各个所述目标文件分配独立的文件上传线程,基于所述文件上传线程将各个所述目标文件并行上传至内容分发网络节点。2.根据权利要求1所述的内容分发网络预热方法,其特征在于,在根据各个目标文件的文件尺寸构建所述目标文件的各个分块文件的下载任务之前,还包括:定期轮循数据库,获取各个所述目标文件的数据记录,所述数据记录用于下载对应的所述目标文件,所述目标文件在存储至云端时,同步存储数据记录至所述数据库。3.根据权利要求1所述的内容分发网络预热方法,其特征在于,所述根据各个目标文件的文件尺寸,构建所述目标文件的各个分块文件的下载任务,为各个所述下载任务分配独立的文件下载线程,包括:将所述目标文件的文件尺寸比对设定的尺寸阈值;若所述目标文件的文件尺寸小于所述尺寸阈值,构建所述目标文件的下载任务;若所述目标文件的尺寸达到所述尺寸阈值,将所述目标文件切分为多个分块文件,构建各个所述分块文件的下载任务。4.根据权利要求3所述的内容分发网络预热方法,其特征在于,所述将所述目标文件切分为多个分块文件,包括:基于所述分块文件的标准尺寸信息以及所述目标文件的文件尺寸切分所述目标文件,得到对应的多个所述分块文件,并为所述分块文件配置命名信息,所述命名信息包括所述目标文件的文件名以及所述分块文件的文件序号。5.根据权利要求4所述的内容分发网络预热方法,其特征在于,所述将对应的各个所述分块文件合并为一个所述目标文件,包括:选取所述命名信息中文件名相同的各个所述分块文件;按照所述命名信息的文件序号将相...

【专利技术属性】
技术研发人员:梁为涛
申请(专利权)人:有半岛北京信息科技有限公司
类型:发明
国别省市:

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

1