CN101980168A - 一种动态分块传输方法及装置 - Google Patents

一种动态分块传输方法及装置 Download PDF

Info

Publication number
CN101980168A
CN101980168A CN2010105344271A CN201010534427A CN101980168A CN 101980168 A CN101980168 A CN 101980168A CN 2010105344271 A CN2010105344271 A CN 2010105344271A CN 201010534427 A CN201010534427 A CN 201010534427A CN 101980168 A CN101980168 A CN 101980168A
Authority
CN
China
Prior art keywords
file
thread
transmission
piecemeal
cpu
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.)
Pending
Application number
CN2010105344271A
Other languages
English (en)
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 Century Broadband Internet Data Center Co., Ltd.
Original Assignee
BEIJING BANYANO DATA CENTER SOLUTIONS Ltd
BEIJING CLOUDEX SOFTWARE SERVICE 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 BANYANO DATA CENTER SOLUTIONS Ltd, BEIJING CLOUDEX SOFTWARE SERVICE Co Ltd filed Critical BEIJING BANYANO DATA CENTER SOLUTIONS Ltd
Priority to CN2010105344271A priority Critical patent/CN101980168A/zh
Publication of CN101980168A publication Critical patent/CN101980168A/zh
Pending legal-status Critical Current

Links

Images

Abstract

本发明公开了一种动态分块传输方法,包括:获取系统中CPU的数量值;根据所述CPU的数量值对需要上传的文件进行平均分块;启动多线程,将所述经过分块的文件同时向所述CPU进行传输。本发明提供的动态分块传输方法,在文件发送前,首先获取系统中可用CPU的数量值,根据CPU的数量值对需要上传的文件进行平均分块,启动多线程对经过分块的文件同时向CPU传输,由于对文件进行了分块,每个线程分担的传输任务减少,缓解了传输压力,提高了传输速度,避免了传输过程中造成线程堵塞,造成传输速度缓慢的现象。

Description

一种动态分块传输方法及装置
技术领域
本申请涉及计算机技术领域,特别是涉及一种动态分块传输方法及装置。
背景技术
传统的文件分发方式为,以单个设备为中心,将文件分发到多个设备上。
在传统的文件传输过程中,传统的传输工具在客户端将文件直接向CPU进行传输,由于文件较大,在传输过程中很容易造成线程堵塞,造成传输速度缓慢。
发明内容
为解决上述技术问题,本申请实施例提供一种动态分块传输方法及装置,可以根据CPU数量的多少对文件进行平均分块,然后建立多线程,同时对分块的文件进行上传,提高了传输速率。
技术方案如下:
一种动态分块传输方法,包括:
获取系统中CPU的数量值;
根据所述CPU的数量值对需要上传的文件进行平均分块;
启动多线程,将所述经过分块的文件同时向所述CPU进行传输。
上述的方法,优选的,在启动多线程,将文件向所述CPU进行传输的过程中,若某一线程的传输任务先结束,在其它未结束的线程中选择文件分块剩余最大的分块,将其平分,其中一块由已结束传输任务的线程进行传输。
上述的方法,优选的,在启动多线程,将文件向所述CPU进行传输的过程中,若某一线程的传输任务先结束,对其它未结束的线程中的文件分块大小进行判断,若判断得出未完成传输的分块大小均小于5MB,则不作出处理,由未传输结束的原线程对分块文件继续进行传输;否则,在其它未结束的线程中选择文件分块剩余最大的分块,将其平分,其中一块由已结束传输任务的线程进行传输。
一种动态分块传输装置,包括:数量获取单元、分块单元和传输单元;
所述数量获取单元用于获取系统中CPU的数量;
所述分块单元用于根据所述数量获取单元获取的CPU的数量值对需要上传的文件进行平均分块;
所述传输单元用于启动多线程,将经过所述分块单元分块的文件同时向所述CPU进行传输。
上述的装置,优选的,所述传输单元包括选择单元;
所述选择单元用于在所述传输单元启动多线程,将文件向所述CPU进行传输的过程中,若某一线程的传输任务先结束,在其它未结束的线程中选择文件分块剩余最大的分块,将其平分,其中一块由已结束传输任务的线程进行传输。
上述的装置,优选的,所述传输单元还包括判断单元;
所述判断单元用于在所述传输单元启动多线程,将文件向所述CPU进行传输的过程中,若某一线程的传输任务先结束,对其它未结束的线程中的文件分块大小进行判断,若判断得出未完成传输的分块大小均小于5MB,则不作出处理,由传输单元中未传输结束的原线程对分块文件继续进行传输;否则,在其它未结束的线程中选择文件分块剩余最大的分块,将其平分,其中一块由已结束传输任务的线程进行传输。
由以上本申请实施例提供的技术方案可见,本发明提供的一种动态分块传输方法及装置,在文件发送前,首先获取系统中可用CPU的数量值,根据CPU的数量值对需要上传的文件进行平均分块,启动多线程对经过分块的文件同时向CPU传输,由于对文件进行了分块,每个线程分担的传输任务减少,缓解了传输压力,提高了传输速度,避免了传输过程中造成线程堵塞,造成传输速度缓慢的现象。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的动态分块传输方法的流程图;
图2为本申请实施例提供的对文件进行传输过程中的流程图;
图3为本申请实施例提供的对文件进行传输过程的一详细流程图;
图4为本申请实施例提供的动态分块传输装置的结构示意图;
图5为本申请实施例提供的动态分块传输装置的一详细结构示意图;
图6为本申请实施例提供的动态分块传输装置的又一详细结构示意图。
具体实施方式
本申请实施例提供一种动态分块传输方法,针对现有技术中文件传输过程中,客户端将文件直接向CPU进行传输,文件较大,在传输过程中容易造成线程堵塞的问题,采取一定措施,在文件传输开始前,获取系统中可用CPU的数量值,根据该数量值对上传文件进行动态分块,将分成的块文件以多线程的形式发送至CPU,缓解传输压力,提供传输速度,避免传输过程中造成的线程堵塞。
以上是本申请的核心思想,为了使本技术领域的人员更好地理解本申请方案。下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
本申请实施例提供的动态分块传输方法的流程图如图1所示,包括:
步骤S101:获取系统中CPU的数量值;
步骤S102:根据所述CPU的数量值对需要上传的文件进行平均分块;
步骤S103:启动多线程,将所述经过分块的文件同时向所述CPU进行传输。
需要说明的是:本申请实施例的实施过程中,发现文件的最高传输速度同CPU的数量很大关系,而由于系统的读写问题,过多分块并不会大幅度提高文件的传输速度,反而会增大线程间切换成本,所以本申请实施例中的根据CPU数量值对文件进行分块的过程中,分块的数量在某一范围内,开发人员可根据实际需要对分块的数量进行限制,并不需要完全根据获取的CPU的数量值对文件进行分块,即本申请实施例中所述的根据CPU数量值进行分块,并不是完全根据CPU的数量值进行的,而是根据CPU的数量值适当对文件进行分块,以确保文件的传输速度。
本申请实施例提供的对文件进行传输过程的流程图如图2所示,步骤S201:启动多线程,开始将分块文件向CPU进行传输;
步骤S202:对多线程分块文件的传输过程进行检测;
步骤S203:判断是否有某一线程的传输任务提前结束;若有,执行步骤S204;否则,执行步骤S205;
步骤S204:在其它未结束的线程中选择文件分块剩余最大的分块,将其平分,其中一块由已结束传输任务的线程进行传输;
该步骤中,对其它未结束的线程中的传输剩余的分块文件进行大小检测并比较,得到剩余的分块文件中最大的分块文件,将该分块文件进行平分,分为两个大小相等的子分块文件,其中一块子分块文件由已经结束传输任务的线程进行传输,这样可以提高传输速度,环境其它线程的传输压力;
步骤S205:各个线程继续对分块文件进行传输。
本申请实施例提供的对文件进行传输过程的一详细流程图如图3所示,在图2所示的步骤基础上,在执行步骤S203之后,执行步骤S214:判断其它线程中未完成传输的分块文件的大小是否均小于5MB,若存在不小于5MB的分块文件,执行步骤S204:在其它未结束的线程中选择文件分块剩余最大的分块,将其平分,其中一块由己节航速传输任务的线程进行传输;否则执行步骤S205:各个线程继续对分块文件进行传输。
通过以上对本申请方法实施例的说明,本申请中客户端的分块策略为,首先获取可用CPU的数量,将文件根据CPU的数量进行平均分块,在实际传输过程中,如果发生某一线程任务先结束,那么客户端会寻找一个现有未完成的最大的块,再分一半,启动已完成传输任务的线程去上传,如果剩下的分块文件的大小均小于5MB,则不再进行分块,各个线程按原传输过程继续对剩余的分块文件进行传输。
本申请实施例提供的动态分块传输装置的结构示意图如图4所示,包括:数量获取单元301、分块单元302和传输单元303;
其中:数量获取单元301用于获取系统中CPU的数量;
分块单元302用于根据数量获取单元301获取的CPU的数量值对需要上传的文件进行平均分块;
传输单元303用于启动多线程,将经过分块单元302分块的文件同时向所述CPU进行传输。
本申请实施例提供的动态分块传输装置的一详细结构示意图如图5所示,传输单元303包括选择单元304;
选择单元304用于在传输单元303启动多线程,将文件向所述CPU进行传输的过程中,若某一线程的传输任务先结束,在其它未结束的线程中选择文件分块剩余最大的分块,将其平分,其中一块由已结束传输任务的线程进行传输。
本申请实施例提供的动态分块传输装置的又一详细结构示意图如图6所示,传输单元304还包括判断单元305;
判断单元305用于在所述传输单元启动多线程,将文件向所述CPU进行传输的过程中,若某一线程的传输任务先结束,对其它未结束的线程中的文件分块大小进行判断,若判断得出未完成传输的分块大小均小于5MB,则不作出处理,由传输单元305中未传输结束的原线程对分块文件继续进行传输;否则,在其它未结束的线程中选择文件分块剩余最大的分块,将其平分,其中一块由已结束传输任务的线程进行传输。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。以上所述仅是本申请的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

Claims (6)

1.一种动态分块传输方法,其特征在于,包括:
获取系统中CPU的数量值;
根据所述CPU的数量值对需要上传的文件进行平均分块;
启动多线程,将所述经过分块的文件同时向所述CPU进行传输。
2.根据权利要求1所述的方法,其特征在于,在启动多线程,将文件向所述CPU进行传输的过程中,若某一线程的传输任务先结束,在其它未结束的线程中选择文件分块剩余最大的分块,将其平分,其中一块由已结束传输任务的线程进行传输。
3.根据权利要求2所述的方法,其特征在于,在启动多线程,将文件向所述CPU进行传输的过程中,若某一线程的传输任务先结束,对其它未结束的线程中的文件分块大小进行判断,若判断得出未完成传输的分块大小均小于5MB,则不作出处理,由未传输结束的原线程对分块文件继续进行传输;否则,在其它未结束的线程中选择文件分块剩余最大的分块,将其平分,其中一块由已结束传输任务的线程进行传输。
4.一种动态分块传输装置,其特征在于,包括:数量获取单元、分块单元和传输单元;
所述数量获取单元用于获取系统中CPU的数量;
所述分块单元用于根据所述数量获取单元获取的CPU的数量值对需要上传的文件进行平均分块;
所述传输单元用于启动多线程,将经过所述分块单元分块的文件同时向所述CPU进行传输。
5.根据权利要求4所述的装置,其特征在于,所述传输单元包括选择单元;
所述选择单元用于在所述传输单元启动多线程,将文件向所述CPU进行传输的过程中,若某一线程的传输任务先结束,在其它未结束的线程中选择文件分块剩余最大的分块,将其平分,其中一块由已结束传输任务的线程进行传输。
6.根据权利要求5所述的装置,其特征在于,所述传输单元还包括判断单元;
所述判断单元用于在所述传输单元启动多线程,将文件向所述CPU进行传输的过程中,若某一线程的传输任务先结束,对其它未结束的线程中的文件分块大小进行判断,若判断得出未完成传输的分块大小均小于5MB,则不作出处理,由传输单元中未传输结束的原线程对分块文件继续进行传输;否则,在其它未结束的线程中选择文件分块剩余最大的分块,将其平分,其中一块由已结束传输任务的线程进行传输。
CN2010105344271A 2010-11-05 2010-11-05 一种动态分块传输方法及装置 Pending CN101980168A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010105344271A CN101980168A (zh) 2010-11-05 2010-11-05 一种动态分块传输方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010105344271A CN101980168A (zh) 2010-11-05 2010-11-05 一种动态分块传输方法及装置

Publications (1)

Publication Number Publication Date
CN101980168A true CN101980168A (zh) 2011-02-23

Family

ID=43600671

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010105344271A Pending CN101980168A (zh) 2010-11-05 2010-11-05 一种动态分块传输方法及装置

Country Status (1)

Country Link
CN (1) CN101980168A (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102663104A (zh) * 2012-04-16 2012-09-12 苏州阔地网络科技有限公司 一种文件传输方法及系统
CN103246563A (zh) * 2013-04-24 2013-08-14 湖南大学 一种具有存储感知的多层分块调度方法
CN104661243A (zh) * 2015-02-11 2015-05-27 上海大唐移动通信设备有限公司 一种减少下载结束拖尾的方法和系统
CN103841196B (zh) * 2014-03-07 2017-05-17 长沙裕邦软件开发有限公司 一种基于多线程的文件上传系统及方法
CN106790653A (zh) * 2017-01-17 2017-05-31 上海泓智信息科技有限公司 文件传输处理方法及装置
CN107424154A (zh) * 2017-04-21 2017-12-01 成都信息工程大学 基于动态分配的分水岭图像分割并行方法
CN107463541A (zh) * 2017-07-31 2017-12-12 武汉斗鱼网络科技有限公司 文件差异比较方法、存储介质、电子设备及系统
CN108429799A (zh) * 2018-03-01 2018-08-21 北京天融信网络安全技术有限公司 批量文件的并行传输方法、装置及存储介质
CN108965112A (zh) * 2018-08-09 2018-12-07 江苏神州信源系统工程有限公司 使用即时通讯软件进行文件传输的方法及装置
CN112511633A (zh) * 2020-12-03 2021-03-16 苏州浪潮智能科技有限公司 一种海量小文件分块传输的方法、系统、设备及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101131652A (zh) * 2006-08-21 2008-02-27 英业达股份有限公司 多核多中央处理器的执行线程分配方法
CN101446908A (zh) * 2007-11-26 2009-06-03 新奥特(北京)视频技术有限公司 一种基于多cpu平台提高特技处理效率的方法
CN101656751A (zh) * 2008-08-18 2010-02-24 北京数码大方科技有限公司 加速上传与下载文件的方法及其系统
CN101840312A (zh) * 2009-12-31 2010-09-22 创新科存储技术有限公司 一种用于多核处理器的raid5写数据方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101131652A (zh) * 2006-08-21 2008-02-27 英业达股份有限公司 多核多中央处理器的执行线程分配方法
CN101446908A (zh) * 2007-11-26 2009-06-03 新奥特(北京)视频技术有限公司 一种基于多cpu平台提高特技处理效率的方法
CN101656751A (zh) * 2008-08-18 2010-02-24 北京数码大方科技有限公司 加速上传与下载文件的方法及其系统
CN101840312A (zh) * 2009-12-31 2010-09-22 创新科存储技术有限公司 一种用于多核处理器的raid5写数据方法及装置

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102663104A (zh) * 2012-04-16 2012-09-12 苏州阔地网络科技有限公司 一种文件传输方法及系统
CN103246563A (zh) * 2013-04-24 2013-08-14 湖南大学 一种具有存储感知的多层分块调度方法
CN103246563B (zh) * 2013-04-24 2016-06-08 湖南大学 一种具有存储感知的多层分块调度方法
CN103841196B (zh) * 2014-03-07 2017-05-17 长沙裕邦软件开发有限公司 一种基于多线程的文件上传系统及方法
CN104661243B (zh) * 2015-02-11 2018-04-10 上海大唐移动通信设备有限公司 一种减少下载结束拖尾的方法和系统
CN104661243A (zh) * 2015-02-11 2015-05-27 上海大唐移动通信设备有限公司 一种减少下载结束拖尾的方法和系统
CN106790653A (zh) * 2017-01-17 2017-05-31 上海泓智信息科技有限公司 文件传输处理方法及装置
CN107424154A (zh) * 2017-04-21 2017-12-01 成都信息工程大学 基于动态分配的分水岭图像分割并行方法
CN107424154B (zh) * 2017-04-21 2020-04-03 成都信息工程大学 基于动态分配的分水岭图像分割并行方法
CN107463541A (zh) * 2017-07-31 2017-12-12 武汉斗鱼网络科技有限公司 文件差异比较方法、存储介质、电子设备及系统
CN108429799A (zh) * 2018-03-01 2018-08-21 北京天融信网络安全技术有限公司 批量文件的并行传输方法、装置及存储介质
CN108965112A (zh) * 2018-08-09 2018-12-07 江苏神州信源系统工程有限公司 使用即时通讯软件进行文件传输的方法及装置
CN112511633A (zh) * 2020-12-03 2021-03-16 苏州浪潮智能科技有限公司 一种海量小文件分块传输的方法、系统、设备及介质
CN112511633B (zh) * 2020-12-03 2022-11-29 苏州浪潮智能科技有限公司 一种海量小文件分块传输的方法、系统、设备及介质

Similar Documents

Publication Publication Date Title
CN101980168A (zh) 一种动态分块传输方法及装置
US9634888B2 (en) Method and system for transmitting data in parallel via wireless link and wired link
CN103064807B (zh) 多通道直接存储器存取控制器
CN103580842A (zh) 一种多类型无线链路并行传输的方法和系统
CN104767809B (zh) 一种下载控制方法及系统
US8719367B2 (en) Data processing apparatus, distributed processing system, data processing method and data processing program
WO2008127604A3 (en) Shared stream memory on multiple processors
EP2391150A3 (en) Information processing apparatus, information processing method, and information processing program
US20150113252A1 (en) Thread control and calling method of multi-thread virtual pipeline (mvp) processor, and processor thereof
EP4220402A3 (en) Augmenting capabilities of a host device
CN105320570B (zh) 资源管理方法和系统
WO2012140667A3 (en) Application sharing in multi host computing systems
EP2330861A3 (en) Communication terminal apparatus, communication control apparatus, wireless communication system, and resource allocation request method
CN104239249A (zh) Pci-e零拷贝dma数据传输方法
US20110055353A1 (en) Dynamic File Streaming
CN105516024A (zh) 一种基于队列的任务流量监控方法及系统
CN105183585B (zh) 一种数据备份方法及装置
CN109240826B (zh) 多区块链网络中节点共用计算设备时的计算资源分配方法
EP2703896A3 (en) Image forming apparatus
US20150121392A1 (en) Scheduling in job execution
CN102611760A (zh) 一种文件的传输方法及系统
CN103823712A (zh) 一种多cpu虚拟机系统的数据流处理方法和装置
CN104317947A (zh) 一种基于海量数据的实时结构化数据比对系统
CN108429799B (zh) 批量文件的并行传输方法、装置及存储介质
CN105630730B (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
ASS Succession or assignment of patent right

Free format text: FORMER OWNER: BEIJING BANYANO DATA CENTER SOLUTIONS LTD.

Effective date: 20121015

Owner name: BEIJING CENTURY BROADBAND INTERNET DATA CENTER CO.

Free format text: FORMER OWNER: BEIJING CLOUDEX SOFTWARE SERVICES CO., LTD.

Effective date: 20121015

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20121015

Address after: 100015, No. 5, building 1, 3 East Road, Jiuxianqiao Road, Beijing, Chaoyang District

Applicant after: Beijing Century Broadband Internet Data Center Co., Ltd.

Address before: 100015 No. 5, building 5, building 1, Jiuxianqiao East Road, Chaoyang District, Beijing

Applicant before: Beijing CloudEx Software Service Co., Ltd.

Applicant before: Beijing BANYANO Data Center Solutions Ltd.

C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20110223