资源文件下载方法、装置、设备及介质制造方法及图纸

技术编号:27217094 阅读:17 留言:0更新日期:2021-02-04 11:34
本申请提供一种资源文件下载方法、装置、设备及介质,涉及计算机技术领域,用于提高下载资源文件的下载速度。该方法包括:应用于客户端中,所述客户端运行在终端设备上,所述方法包括:获取待下载的资源文件的文件信息,所述文件信息包括存储所述资源文件的服务器地址信息;根据所述终端设备的传输带宽,创建多个第一线程;根据所述服务器地址信息,通过所述多个第一线程中每个第一线程分别从服务器下载所述资源文件的文件分片;根据获得的各个文件分片,获得所述资源文件。该方法通过在下载资源文件时,创建多个线程,多个线程并发下载资源文件,提高了资源文件的下载速度。提高了资源文件的下载速度。提高了资源文件的下载速度。

【技术实现步骤摘要】
资源文件下载方法、装置、设备及介质


[0001]本申请涉及计算机
,尤其涉及一种资源文件下载方法、装置、设备及介质。

技术介绍

[0002]团队即时通讯应用通常支持资源文件下载功能,即资源文件被存储在服务器中,当用户需要该资源文件时,用户可以通过团队即时通讯客户端向服务器请求资源文件,以获得该资源文件。
[0003]目前,客户端通常是利用超文本传输协议(Hyper Text Transfer Protocol,HTTP)向服务器请求资源文件,但当下载资源文件的文件大小较大时,资源文件的下载速度较慢。

技术实现思路

[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]图1为本申请实施例提供的一种资源文件下载方法的应用场景示意图;
[0033]图2为本申请实施例提供的图1中各个设备的交互过程示意图;
[0034]图3为本申请实施例提供的客户端展示的聊天界面示例图;
[0035]图4为本申请实施例提供的资源文件分片结果的一种示例图;
[0036]图5为本申请实施例提供的一种下载资源文件的一种示例图;
[0037]图6为本申请实施例提供的一种资源文件下载进度展示示例图;
[0038]图7为本申请实施例提供的一种资源文件下载装置的结构示意图;
[0039]图8为本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
[0040]为了更好的理解本申请实施例提供的技术方案,下面将结合说明书附图以及具体的实施方式进行详细的说明。
[0041]为了便于本领域技术人员更好地理解本申请的技术方案,下面对本申请涉及的名词进行介绍。
[0042]资源文件:泛指可以从设备中读取出的内容,或者其他可以在计算机设备中展示的内容。资源文件的类型可以是图片、音频、视频、文字、表情等一种或多种组合。例如客户端可以通过专门的程序接口从设备中读取,并在客户端中根据用户需要进行展示。
[0043]超文本传输协议(Hyper Text Transfer Protocol,HTTP):是一种用于分布式、协作式和超媒体信息系统的应用层协议,以HTTP下载为例,作为HTTP客户端通过资源标识符向HTTP服务端发送所有请求,HTTP服务端根据接收到的请求后,向客户端发送响应信息。
[0044]点对点(peer-to-peer,P2P)传输:又可以称为对等互联网络技术,是指依赖于参与网络的各个设备的计算能力和带宽,以为参与设备提供服务。以P2P下载为例本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种资源文件下载方法,其特征在于,应用于客户端中,所述客户端运行在终端设备上,所述方法包括:获取待下载的资源文件的文件信息,所述文件信息包括存储所述资源文件的服务器地址信息;根据所述终端设备的传输带宽,创建多个第一线程;根据所述服务器地址信息,通过所述多个第一线程中每个第一线程分别从服务器下载所述资源文件的文件分片;根据获得的各个文件分片,获得所述资源文件。2.如权利要求1所述的方法,其特征在于,所述文件信息包括所述资源文件的文件大小信息;在所述根据所述客户端的传输带宽,创建多个第一线程之前,包括:根据所述文件大小信息,确定所述资源文件的文件大小大于或等于第一阈值;以及所述方法还包括:根据所述文件大小信息,确定所述资源文件的文件大小小于第一阈值,则创建一个第一线程,并通过一个第一线程从服务器下载所述资源文件。3.如权利要求1所述的方法,其特征在于,当所述文件大小大于或等于第二阈值时,所述方法还包括:向所述服务器请求获得存储有所述资源文件的其它客户端的客户端地址信息;所述其它客户端为除了所述客户端之外的客户端;根据所述客户端地址信息,创建第二线程;通过所述第二线程从所述其它客户端下载所述待下载资源的文件分片。4.如权利要求3所述的方法,其特征在于,所述通过所述多个第一线程中每个第一线程分别从服务器下载所述资源文件的文件分片,包括:根据设定的文件分片大小,通过所述多个第一线程的每个第一线程,按照文件分片的排列顺序从第一个文件分片开始从服务器下载各个文件分片,所述排列顺序包括从所述资源文件开始到结束的正向顺序或从所述资源文件结束到开始的逆向顺序;所述通过所述第二线程从所述其它客户端下载所述资源文件的文件分片,包括:通过所述第二线程,按照所述排列顺序从最后一个文件分片开始从所述其它客户端开始下载所述资源文件;所述根据获得的各个文件分片,获得所述资源文件,包括:当从所述其它客户端获得的所述资源文件中的部分文件与从所述服务器获得...

【专利技术属性】
技术研发人员:李斌彭向阳罗程
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

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

1