一种下载方法、装置、客户端、系统及存储介质制造方法及图纸

技术编号:20395042 阅读:28 留言:0更新日期:2019-02-20 05:01
本发明专利技术公开了一种下载方法、装置、客户端、系统及计算机可读存储介质,其方法包括:根据接收的文件下载指令中的文件的属性信息,获取所述文件的HTTP下载路径和可以提供下载的远程客户端的信息,并在未完成区间生成所述文件的待下载区间;当检测到所述未完成区间中所述文件的待下载区间时,从所述文件的待下载区间中获取预设数量的HTTP分片区间,以及P2P分片区间;根据所述HTTP分片区间以及所述HTTP下载路径,从HTTP服务器并发下载预设数量的HTTP数据片;根据所述P2P分片区间以及所述远程客户端的信息,从所述远程客户端下载P2P数据片;将HTTP数据片以及P2P数据片写入已完成区间,以从所述已完成区间获取所述文件,本发明专利技术能够在网络较差的情况下提高下载速度。

【技术实现步骤摘要】
一种下载方法、装置、客户端、系统及存储介质
本专利技术涉及计算机网络
,尤其涉及一种下载方法、装置、客户端、系统及计算机可读存储介质。
技术介绍
文件下载技术广泛应用于各种文件传输场景。其中,最常用的文件下载方法为HTTP下载方法,超文本传输协议(HyperTextTransportationProtocol,HTTP)是一种为了将位于全球各个地方的Web服务器中的内容发送给不特定多数用户而制订的协议,其提供了客户端和服务器端请求和应答的标准(TCP)。客户端是终端用户,服务器端是网站。通过使用Web浏览器、网络爬虫或者其它的工具,客户端发起一个到服务器上指定端口(默认端口为80)的HTTP请求,然后服务器将存储于服务器上的内容传输到请求下载的客户端(Client)。在实现本专利技术的过程中,专利技术人发现:在复杂的网络环境传输中,当用户网络状况较差时,可能会导致下载速度变慢;或者当存在多个客户端从服务器上下载文件时,由于服务器所能提供的带宽有限,每个从服务器上进行文件下载的客户端,都要占用服务器一部分带宽,导致服务器无法满足超额数量的客户端同时下载文件的需求,从而使得客户端方面的下载速度变慢甚至无法下载,严重影响的用户的体验。
技术实现思路
针对上述问题,本专利技术的目的在于提供一种下载方法、装置、客户端、系统及计算机可读存储介质,显著提高下载速度,提高用户使用体验。第一方面,本专利技术实施例提供了一种下载方法,包括以下步骤:接收文件下载指令;其中,所述文件下载指令包括待下载的文件的属性信息;根据所述文件的属性信息,获取所述文件的HTTP下载路径和可以提供下载的远程客户端的信息,并在未完成区间生成所述文件的待下载区间;当检测到所述未完成区间中所述文件的待下载区间时,从所述文件的待下载区间中获取所述文件的预设数量的HTTP分片区间,以及从所述文件的待下载区间中获取所述文件的P2P分片区间;根据所述HTTP分片区间以及所述HTTP下载路径,从HTTP服务器并发下载对应预设数量的HTTP数据片;根据所述P2P分片区间以及所述远程客户端的信息,从所述远程客户端下载P2P数据片;将所述HTTP数据片以及所述P2P数据片写入已完成区间,以从所述已完成区间获取下载完成的所述文件。在第一方面的第一种实现方式中,所述根据所述文件的信息,获取所述文件的HTTP下载路径和可以提供下载的远程客户端的信息,并在未完成区间生成所述文件的待下载区间,具体为:根据所述文件的属性信息,获取所述文件的HTTP下载路径;根据所述文件的属性信息,从P2P服务器获取可以提供下载的远程客户端接口以及所述远程客户端的可分享数据片信息;根据所述文件的属性信息,在未完成区间生成所述文件的待下载区间。根据第一方面的第一种实现方式,在第一方面的第二种实现方式中,所述当检测到所述未完成区间中所述文件的待下载区间时,从所述文件的待下载区间中获取所述文件的预设数量的HTTP分片区间,以及从所述文件的待下载区间中获取所述文件的P2P分片区间,具体为:当检测到所述未完成区间中所述文件的待下载区间时,根据当前HTTP下载速度,从所述文件的待下载区间的预选位置获取预设数量的HTTP分片区间;当检测到所述未完成区间中所述文件的待下载区间时,根据所述远程客户端的可分享数据片信息以及当前所述远程客户端的下载速度,从所述文件的待下载区间中获取P2P数据片区间。根据第一方面的第二种实现方式,在第一方面的第三种实现方式中,所述根据所述P2P分片区间以及所述远程客户端的信息,从所述远程客户端下载P2P数据片,具体为:根据所述远程客户端接口,向所述远程客户端发送第一P2P上传消息;其中,所述第一P2P上传消息包括所述P2P分片区间;接收所述远程客户端根据所述第一P2P上传消息返回的第一P2P下载消息;其中,所述第一P2P下载消息包括所述P2P分片区间以及该P2P分片区间对应的P2P数据片。根据第一方面的第三种实现方式,在第一方面的第四种实现方式中,所述将所述HTTP数据片以及所述P2P数据片写入已完成区间,以从所述已完成区间获取下载完成的所述文件,具体为:将下载完成的所述HTTP数据片以及所述P2P数据片写入已完成区间;当检测到所述已完成区间中所述HTTP数据片以及所述P2P数据片所占总区间等于所述文件在所述未完成区间的初始待下载区间时,从所述已完成区间提取所述文件的HTTP数据片以及P2P数据片,以获取所述文件。根据第一方面的第四种实现方式,在第一方面的第五种实现方式中,还包括:根据所述已完成区间中所述文件的所有数据片,向所述P2P服务器发送P2P数据片分享消息;其中,所述P2P数据片分享消息包括客户端接口以及可分享数据片信息;接收所述远程客户端根据所述P2P数据片分享消息返回的第二P2P上传消息;其中,所述远程客户端从所述P2P服务器获取所述P2P数据片分享消息;所述第二P2P上传消息包括所述远程客户端的P2P分片区间;根据所述已完成区间中的所述文件的所有数据片以及所述远程客户端的P2P分片区间,向所述远程客户端发送第二P2P下载消息;其中,所述第二P2P下载消息包括所述远程客户端的P2P分片区间、以及对应的从所述已完成区间获取的P2P数据片。第二方面,本专利技术实施例提供了一种下载装置,包括:下载指令接收模块,用于接收文件下载指令;其中,所述文件下载指令包括待下载的文件的属性信息;下载信息获取模块,用于根据所述文件的属性信息,获取所述文件的HTTP下载路径和可以提供下载的远程客户端的信息,并在未完成区间生成所述文件的待下载区间;分片区间获取模块,用于当检测到所述未完成区间中所述文件的待下载区间时,从所述文件的待下载区间中获取所述文件的预设数量的HTTP分片区间,以及从所述文件的待下载区间中获取所述文件的P2P分片区间;HTTP数据片下载模块,用于根据所述HTTP分片区间以及所述HTTP下载路径,从HTTP服务器并发下载对应预设数量的HTTP数据片;P2P数据片下载模块,用于根据所述P2P分片区间以及所述远程客户端的信息,从所述远程客户端下载P2P数据片;文件获取模块,用于将所述HTTP数据片以及所述P2P数据片写入已完成区间,以从所述已完成区间获取下载完成的所述文件。第三方面,本专利技术实施例提供了一种下载客户端,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面中任意一项所述的下载方法。第四方面,本专利技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如第一方面中任意一项所述的下载方法。第五方面,本专利技术实施例提供了一种下载系统,包括如第三方面所述的下载客户端、至少一个远程客户端以及HTTP服务器;所述下载客户端,用于接收文件下载指令;其中,所述文件下载指令包括待下载的文件的属性信息;根据所述文件的属性信息,获取所述文件的HTTP下载路径和可以提供下载的远程客户端的信息,并在未完成区间生成所述文件的待下载区间;所述下载客户端,还用于当检测到所述未完成区间中所述文件的待下载区间时,从所述文件的待下载区间中获取所述文件的预设本文档来自技高网...

【技术保护点】
1.一种下载方法,其特征在于,包括以下步骤:接收文件下载指令;其中,所述文件下载指令包括待下载的文件的属性信息;根据所述文件的属性信息,获取所述文件的HTTP下载路径和可以提供下载的远程客户端的信息,并在未完成区间生成所述文件的待下载区间;当检测到所述未完成区间中所述文件的待下载区间时,从所述文件的待下载区间中获取所述文件的预设数量的HTTP分片区间,以及从所述文件的待下载区间中获取所述文件的P2P分片区间;根据所述HTTP分片区间以及所述HTTP下载路径,从HTTP服务器并发下载对应预设数量的HTTP数据片;根据所述P2P分片区间以及所述远程客户端的信息,从所述远程客户端下载P2P数据片;将所述HTTP数据片以及所述P2P数据片写入已完成区间,以从所述已完成区间获取下载完成的所述文件。

【技术特征摘要】
1.一种下载方法,其特征在于,包括以下步骤:接收文件下载指令;其中,所述文件下载指令包括待下载的文件的属性信息;根据所述文件的属性信息,获取所述文件的HTTP下载路径和可以提供下载的远程客户端的信息,并在未完成区间生成所述文件的待下载区间;当检测到所述未完成区间中所述文件的待下载区间时,从所述文件的待下载区间中获取所述文件的预设数量的HTTP分片区间,以及从所述文件的待下载区间中获取所述文件的P2P分片区间;根据所述HTTP分片区间以及所述HTTP下载路径,从HTTP服务器并发下载对应预设数量的HTTP数据片;根据所述P2P分片区间以及所述远程客户端的信息,从所述远程客户端下载P2P数据片;将所述HTTP数据片以及所述P2P数据片写入已完成区间,以从所述已完成区间获取下载完成的所述文件。2.根据权利要求1所述的下载方法,其特征在于,所述根据所述文件的信息,获取所述文件的HTTP下载路径和可以提供下载的远程客户端的信息,并在未完成区间生成所述文件的待下载区间,具体为:根据所述文件的属性信息,获取所述文件的HTTP下载路径;根据所述文件的属性信息,从P2P服务器获取可以提供下载的远程客户端接口以及所述远程客户端的可分享数据片信息;根据所述文件的属性信息,在未完成区间生成所述文件的待下载区间。3.根据权利要求2所述的下载方法,其特征在于,所述当检测到所述未完成区间中所述文件的待下载区间时,从所述文件的待下载区间中获取所述文件的预设数量的HTTP分片区间,以及从所述文件的待下载区间中获取所述文件的P2P分片区间,具体为:当检测到所述未完成区间中所述文件的待下载区间时,根据当前HTTP下载速度,从所述文件的待下载区间的预选位置获取预设数量的HTTP分片区间;当检测到所述未完成区间中所述文件的待下载区间时,根据所述远程客户端的可分享数据片信息以及当前所述远程客户端的下载速度,从所述文件的待下载区间中获取P2P数据片区间。4.根据权利要求3所述的下载方法,其特征在于,所述根据所述P2P分片区间以及所述远程客户端的信息,从所述远程客户端下载P2P数据片,具体为:根据所述远程客户端接口,向所述远程客户端发送第一P2P上传消息;其中,所述第一P2P上传消息包括所述P2P分片区间;接收所述远程客户端根据所述第一P2P上传消息返回的第一P2P下载消息;其中,所述第一P2P下载消息包括所述P2P分片区间以及该P2P分片区间对应的P2P数据片。5.根据权利要求4所述的下载方法,其特征在于,所述将所述HTTP数据片以及所述P2P数据片写入已完成区间,以从所述已完成区间获取下载完成的所述文件,具体为:将下载完成的所述HTTP数据片以及所述P2P数据片写入已完成区间;当检测到所述已完成区间中所述HTTP数据片以及所述P2P数据片所占总区间等于所述文件在所述未完成区间的初始待下载区间时,从所述已完成区间提取所述文件的HTTP数据片以及P2P数据片,以获取所述文件。6.根据权利要求5所述的下载方法,其特征在于,还包括:根据所述已完成区间中所述文件的所有数据片,向所述P2P服务器发送P2P数据片分享消息;其中,所述P2P数...

【专利技术属性】
技术研发人员:徐波
申请(专利权)人:广州多益网络股份有限公司广东利为网络科技有限公司多益网络有限公司
类型:发明
国别省市:广东,44

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

1