[发明专利]提高网络资源下载速度的方法、存储介质、设备及系统在审
申请号: | 201810019790.6 | 申请日: | 2018-01-09 |
公开(公告)号: | CN110022336A | 公开(公告)日: | 2019-07-16 |
发明(设计)人: | 黄浩;张文明;陈少杰 | 申请(专利权)人: | 武汉斗鱼网络科技有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 武汉智权专利代理事务所(特殊普通合伙) 42225 | 代理人: | 张凯 |
地址: | 430000 湖北省武汉市东湖开*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 后台线程 下载 网络资源下载 设备及系统 存储介质 移动终端下载 网络服务器 并行下载 分段下载 内容合并 同一时刻 下载完成 下载性能 线程 创建 并行 写入 | ||
本发明公开了一种提高网络资源下载速度的方法、存储介质、设备及系统,涉及移动终端下载技术领域,本发明通过创建多个后台线程,并行从网络服务器上分段下载同一个文件,等待多个后台线程下载完成,再把每个线程下载的内容合并在一起,创建并写入到本地文件。同时开启多个后台线程同时下载该文件,不仅提高了下载性能,还提高了同一时刻文件的并行下载量,从而提高了文件的下载速度。
技术领域
本发明涉及移动终端下载技术领域,具体涉及一种提高网络资源下载速度的方法、存储介质、设备及系统。
背景技术
网络资源指利用计算机通过通信设备传播和网络软件管理的信息资源,比如网络上的视频、音乐、文件等都是网络资源。
常见的网络资源下载方式为采用一个后台线程下载,其缺点为:采用一个后台线程下载,会造成大文件下载速度过慢;比如下载文件为1GB,当前下载速度为1秒1MB,那总共需要1024秒下载完成。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种提高网络资源下载速度的方法、存储介质、设备及系统,提高了文件的下载速度。
为达到以上目的,本发明采取的技术方案是:一种提高网络资源下载速度的方法:
客户端收到网络资源的下载地址,获取待下载文件的名称和大小;
客户端根据待下载文件的大小计算准备将待下载文件拆分成文件块的数量N,并向网络服务器请求将待下载文件拆分成N个文件块;
服务器将待下载文件拆分成N个文件块;
客户端向网络服务器获取每个文件块的文件块信息;创建N个后台进程,每个后台进程与待下载文件的一个文件块对应,将每个文件块的文件块信息分别传递到对应的后台进程中,在后台进程下载文件块;
客户端创建一个与待下载文件大小相等的本地文件,将下载完的文件块写入到本地文件中。
在上述技术方案的基础上,文件块的数量计算方法为:
设定最优线程负载量为PMB,待下载文件的大小为QMB,最大线程数量为Nmax个,计算线程数量Na=Q/P;
若Na≦Nmax,文件块的数量N的值为Na;
若Na>Nmax,文件块的数量N的值为Nmax。
在上述技术方案的基础上,调用GetBlockFileInfo函数获取文件块信息,文件块信息包括文件块的顺序和大小。
在上述技术方案的基础上,调用CreateProcess函数创建N个后台进程,每个后台进程与待下载文件的一个文件块对应,将每个文件块信息分别传递到对应的后台进程中;
调用StartProcessDownFile开启每个后台进程的网络连接下载
在上述技术方案的基础上,调用CreateFile函数创建一个待下载文件大小的本地文件,调用WriteFile函数将下载完的文件块根据每个文件块的顺序写入到本地文件中。
本发明还公开了一种存储介质,该存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现提高网络资源下载速度的方法。
本发明还公开了一种电子设备,包括存储器和处理器,存储器上储存有在处理器上运行的计算机程序,处理器执行计算机程序时实现提高网络资源下载速度的方法。
本发明还公开了一种提高网络资源下载速度的系统,包括客户端和服务器,其中:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉斗鱼网络科技有限公司,未经武汉斗鱼网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810019790.6/2.html,转载请声明来源钻瓜专利网。