一种文件的传输方法及系统的制作方法

文档序号:7893781阅读:127来源:国知局
专利名称:一种文件的传输方法及系统的制作方法
技术领域
本发明属于网络通信领域,尤其涉及一种文件的传输方法及系统。
背景技术
随着网络通信技术的飞速发展,对网络文件传输速度的要求越来越高。目前,基于网页上传或下载文件的速度较慢。而且,基于网页上传或下载文件时,如果遇到网络较差或网络断开的情况,则需要重新从头开始上传或下载文件,从而造成时间浪费。

发明内容
本发明提供一种文件的传输方法及系统,以解决上述问题。本发明提供一种文件的传输方法。上述方法包括以下步骤发送端读取待传输的文件,并将所述文件拆分为多个文件块;所述发送端根据预设策略调用线程通过函数 NetGroup. addHaveOb ject传输所述文件块;接收端调用函数NetGroup. addffantOb ject从所述发送端接收所述文件块。其中,所述预设策略为所述发送端设定待传输文件的优先级,并根据线程池中所有线程的空闲率将线程归入不同类别,并确定待传输文件的优先级与线程类别的对应关系,并根据待传输文件拆分的文件块的大小,调用每个类别中相应的线程传输对应优先级的文件的文件块。本发明还提供一种文件的传输系统,包括发送端及接收端。发送端连接接收端。其中,发送端,用于读取待传输的文件,并将所述文件拆分为多个文件块。发送端,还用于根据预设策略调用线程通过函数NetGroup. addHaveOb ject传输所述文件块。接收端,用于调用函数NetGroup. addffantOb ject从所述发送端接收所述文件块。其中,所述预设策略为所述发送端设定待传输文件的优先级,并根据线程池中所有线程的空闲率将线程归入不同类别,并确定待传输文件的优先级与线程类别的对应关系,并根据待传输文件拆分的文件块的大小,调用每个类别中相应的线程传输对应优先级的文件的文件块。相较于先前技术,根据本发明提供的文件的传输方法及系统,发送端将待传输文件拆分为多个文件块后进行传输,而且发送端通过函数NetGroup. addHaveOb ject传输所述文件块,接收端调用函数NetGroup. addffantOb ject接收文件块。如此,将大文件拆分为多个文件块后传输,可以节省传输时间,并提高传输速度。此外,文件传输更稳定,从而能够应对复杂的网络环境。


此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中图I所示为根据本发明的较佳实施例提供的文件的传输方法的流程图;图2所示为根据本发明的较佳实施例提供的文件的传输系统的示意图。
具体实施例方式下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。图I所示为根据本发明的较佳实施例提供的文件的传输方法的流程图。如图I所示,本发明的较佳实施例提供的文件的传输方法包括步骤101 103。于步骤101,发送端读取待传输的文件,并将所述文件拆分为多个文件块。例如,发送端读取待传输的文件A,并将待传输的文件A拆分为五个文件块(即,文件块al、a2、a3、 a4、a5)。其中,可将文件A拆分为大小一致的五个文件块,或者根据需要将文件A拆分为大小不一致的五个文件块。然而,本发明对此并不限定。于步骤102,所述发送端根据预设策略调用线程通过函数NetGroup. addHaveOb ject传输所述文件块。例如,发送端调用线程通过函数NetGroup. addHaveOb ject (al, a5)传输文件块 al a5。于本实施例中,预设策略为所述发送端设定待传输文件的优先级,并根据线程池中所有线程的空闲率将线程归入不同类别,并确定待传输文件的优先级与线程类别的对应关系,并根据待传输文件拆分的文件块的大小,调用每个类别中相应的线程传输对应优先级的文件的文件块。具体而言,当对应于同一线程类别的文件块的大小不一致时,发送端调用所述线程类别中空闲率较高的线程传输较大的文件块,调用所述线程类别中空闲率较低的线程传输较小的文件块。当对应于同一线程类别的文件块的大小一致时,发送端随机调用所述线程类别中的线程传输所述文件块。于此,线程的空闲率指采样时段内,线程的空闲时间占采样时段的百分比。线程的空闲率计算可为实时计算或定时计算。然而,本发明对此并不限定。具体而言,发送端设定的待传输文件的优先级由高至低例如依次为第一级、第二级、第三级。然而,本发明对此并不限定。于其他实施例中,可根据需要设置待传输文件的优先级。此外,线程池中的线程以空闲率为划分标准进行划分。例如,线程可根据空闲率划分为三个类别,具体而言,空闲率大于或等于75%的线程可归为第一类别,空闲率大于50% 且小于75%的线程可归为第二类别,空闲率小于或等于50%的线程可归为第三类别。其中,本发明并不限定线程的划分标准。此外,发送端还确定待传输文件的优先级与线程类别的对应关系。例如,第一级的待传输文件对应于第一类别的线程,第二级的待传输文件对应于第二类别的线程,第三级的待传输文件对应于第三类别的线程。于此,待传输文件的优先级与线程类别为一对一的关系,然而,本发明并不限定于此。于其他实施例中,可根据需要设置待传输文件与线程类别对应关系为一对多或多对多的关系。其中,待传输文件与线程类别的对应关系例如下表所示。
待传输文件待传输文件优先级线程类别文件D、E第一级第一类别文件M、N第二级第二类别
4文件P、Q第三级第三类别于本实施例中,发送端计算所有线程的空闲率可将线程归入相应的类别。于此,线程与其类别的对应关系例如下表所示。
线程名线程空闲率线程类别线程a80%第一类别线程b78%线程C75%线程d65%第二类别线程e55%线程f40%第三类别线程g35%以发送端传输文件D、M为例,发送端例如将文件D拆分为三个文件块dl d3,且文件块dl d3的大小不一致(例如,文件块由大至小的顺序依次为文件块dl、文件块d2、 文件块d3),发送端将文件M拆分为大小一致的三个文件块ml m3。因此,发送端会调用文件D对应的线程类别(即,第一类别)中的空闲率最高的线程a传输文件块dl,调用线程b传输文件块d2,调用线程c传输文件块d3。同时,发送端会调用文件M对应的线程类别(即,第二类别)中的线程d传输文件块ml,线程e传输文件块m2(或者,调用线程d传输文件m2,调用线程e传输文件块ml),同时调用第三类别中空闲率较高的线程f传输文件块m3。于另一较佳实施例中,预设策略为所述发送端设定线程池中所有线程的优先级, 并确定文件块与线程优先级的对应关系,所述发送端计算每个优先级中所有线程的空闲率,并根据文件块的大小及所述文件块对应优先级中线程的空闲率调用相应的线程传输所述文件块。具体而言,当对应于同一线程优先级的文件块的大小不一致时,发送端调用所述优先级中空闲率较高的线程传输较大的文件块,调用所述优先级中空闲率较低的线程传输较小的文件块。当对应于同一线程优先级的文件块的大小一致时,发送端随机调用所述优先级中的线程传输所述文件块。于此,线程的空闲率指采样时段内,线程的空闲时间占采样时段的百分比。线程的空闲率计算可为实时计算或定时计算。然而,本发明对此并不限定。举例而言,发送端设定的线程池中线程与其优先级的对应关系如下表所示。
线程名优先级线程I第一等级线程2第一等级
权利要求
1.一种文件的传输方法,其特征在于,包括以下步骤发送端读取待传输的文件,并将所述文件拆分为多个文件块;所述发送端根据预设策略调用线程通过函数NetGroup. addHaveOb ject传输所述文件块;接收端调用函数NetGroup. addffantOb ject从所述发送端接收所述文件块,其中,所述预设策略为所述发送端设定待传输文件的优先级,并根据线程池中所有线程的空闲率将线程归入不同类别,并确定待传输文件的优先级与线程类别的对应关系,并根据待传输文件拆分的文件块的大小,调用每个类别中相应的线程传输对应优先级的文件的文件块。
2.根据权利要求I所述的方法,其特征在于,当对应于同一线程类别的文件块的大小不一致时,所述发送端调用所述类别中空闲率较高的线程传输较大的文件块,调用所述类别中空闲率较低的线程传输较小的文件块。
3.根据权利要求I所述的方法,其特征在于,所述发送端向所述接收端传输所述文件块前,所述发送端发送第一指令给所述接收端,所述接收端接收所述第一指令后响应 NetGroup. Replication. Fetch. Result 事件,并调用函数 NetGroup. addffantOb ject 从所述发送端接收所述文件块。
4.根据权利要求4所述的方法,其特征在于,所述接收端从所述发送端接收所述文件块后,所述接收端发送第二指令给所述发送端。
5.根据权利要求I所述的方法,其特征在于,所述发送端为客户端。
6.根据权利要求I所述的方法,其特征在于,所述接收端为客户端。
7.一种文件的传输系统,其特征在于,包括发送端及接收端,所述发送端连接所述接收端,其中,发送端,用于读取待传输的文件,并将所述文件拆分为多个文件块,所述发送端,还用于根据预设策略调用线程通过函数NetGroup. addHaveOb ject传输所述文件块,所述接收端,用于调用函数NetGroup. addffantOb ject从所述发送端接收所述文件块, 所述预设策略为所述发送端设定待传输文件的优先级,并根据线程池中所有线程的空闲率将线程归入不同类别,并确定待传输文件的优先级与线程类别的对应关系,并根据待传输文件拆分的文件块的大小,调用每个类别中相应的线程传输对应优先级的文件的文件块。
8.根据权利要求7所述的系统,其特征在于,所述发送端为客户端。
9.根据权利要求7所述的系统,其特征在于,所述接收端为客户端。
全文摘要
本发明提供一种文件的传输方法及系统。上述方法包括以下步骤发送端读取待传输的文件,并将所述文件拆分为多个文件块;所述发送端根据预设策略调用线程通过函数NetGroup.addHaveObject传输所述文件块;接收端调用函数NetGroup.addWantObject从所述发送端接收所述文件块。其中,所述预设策略为所述发送端设定待传输文件的优先级,并根据线程池中所有线程的空闲率将线程归入不同类别,并确定待传输文件的优先级与线程类别的对应关系,并根据待传输文件拆分的文件块的大小,调用每个类别中相应的线程传输对应优先级的文件的文件块。
文档编号H04L29/08GK102611760SQ20121011131
公开日2012年7月25日 申请日期2012年4月16日 优先权日2012年4月16日
发明者胡加明 申请人:苏州阔地网络科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1