System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及文件传输,具体涉及一种自适应场景的文件传输方法、装置、设备和存储介质。
技术介绍
1、海量文件传输指的是tb级甚至tb级大量文件传输,海量文件由于其数据量庞大(通常达tb/pb级),传输时间长一直受人诟病。
2、目前针对海量文件传输的相关技术,通常通过打包,并行等方式进行传输,在不同环境下效果相差甚大。因其未结合待传输文件的具体情况以及传输条件,缺乏对多种复杂文件类型以及外部网络状态影响因素等场景的考虑,在实际生产环境中的效果往往不尽人意。
3、对于海量文件传输中的海量小文件,其瓶颈是cpu或带宽利用率低、传输时间长,目前常见优化方案是通过并发方式来实现更快的传输,一个文件传输完成就响应一个确认字符(acknowledgecharacter,ack),当文件数量很多时就需要很多次ack响应,导致传输耗时长,传输效率低下。
技术实现思路
1、有鉴于此,本专利技术提供了一种自适应场景的文件传输方法、装置、设备和存储介质,以解决现有海量文件传输效率低下的技术问题。
2、第一方面,本专利技术提供了一种自适应场景的文件传输方法,包括:获取待传输文件的文件属性,所述文件属性包括文件大小;根据所述文件属性筛选出文件大小小于设定值的第一类传输文件;将所述第一类传输文件的集合分为若干次批量传输,并在单次批量传输后进行确认字符响应。
3、本专利技术的一种自适应场景的文件传输方法,通过获取待传输文件的文件属性,根据所述文件属性筛选出文件大小小
4、可选地,在将所述第一类传输文件的集合分为若干次批量传输,并在单次批量传输后进行确认字符响应之前,还包括:获取传输设备的网络状态;根据所述网络状态确认单次批量传输的所述第一类传输文件的数量。
5、在该方式中,根据网络状态动态调整单次批量传输的文件数量,可以更好地适应网络波动,提高传输的稳定性和效率。
6、可选地,所述网络状态包括网络延时,所述根据所述网络状态确认单次批量传输的所述第一类传输文件的数量,包括:若所述网络延时大于设置的初始延时,则减小单次批量传输的所述第一类传输文件的数量;若所述网络延时小于设置的初始延时,则增大单次批量传输的所述第一类传输文件的数量。
7、通过动态调整传输数量来适应网络延时的变化,可以减少因网络延迟造成的传输中断或数据丢失,提高传输的可靠性。
8、可选地,在获取待传输文件的文件属性之后,还包括:根据所述文件属性筛选出文件大小大于或等于设定值的第二类传输文件;判断传输设备的主机资源状态是否充足;若主机资源状态充足,则根据设定块大小对所述第二类传输文件进行分块处理得到若干文件块,并对若干所述文件块进行并行传输;若主机资源状态不充足,则对所述第二类传输文件进行直接传输。
9、通过判断主机资源状态并选择分块处理或直接传输,可以更有效地利用主机资源,提高文件大小较大的第二类传输文件的传输效率。
10、可选地,在根据设定块大小对所述第二类传输文件进行分块处理得到若干文件块之前,包括:获取传输设备的网络状态;根据所述网络状态确定分块大小。
11、根据网络状态确定分块大小,可以更好地适应网络带宽的变化,优化传输效率。
12、可选地,所述网络状态包括网络带宽,所述根据所述网络状态确定分块大小,包括:判断所述网络带宽是否小于第一带宽设定值;若所述网络带宽小于所述第一带宽设定值,则将分块大小设置为第一预设大小;若所述网络带宽大于所述第一带宽设定值,则将分块大小设置为与所述网络带宽成比例增长,且分块大小不大于第二预设大小。
13、通过设置不同的分块大小来适应不同的网络带宽,可以减少因网络带宽限制造成的传输瓶颈,提高大文件的传输速度。
14、可选地,所述文件属性还包括文件类型,在对若干所述文件块进行并行传输或对所述第二类传输文件进行直接传输之前,包括:根据文件类型确认所述第二类传输文件是否为默认不压缩文件;若所述第二类传输文件为默认不压缩文件,则对所述文件块或所述第二类传输文件进行压缩。
15、由于压缩本身需要消耗资源,当文件的可压缩比非常低时,压缩传输反而会适得其反延长传输时间,因此,需要根据文件类型采取不同的传输方式,才能有效缩短传输时间,默认不压缩文件为可压缩比较高的文件,只将默认不压缩文件可以避免不必要的压缩,提高传输时间。
16、第二方面,本专利技术提供了一种自适应场景的文件传输装置,包括:属性获取模块,用于获取待传输文件的文件属性,所述文件属性包括文件大小;文件类型筛选模块,用于根据所述文件属性筛选出文件大小小于设定值的第一类传输文件;批量传输模块,用于将所述第一类传输文件的集合分为若干次批量传输,并在单次批量传输后进行确认字符响应。
17、第三方面,本专利技术提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的自适应场景的文件传输方法。
18、第四方面,本专利技术提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的自适应场景的文件传输方法。
本文档来自技高网...【技术保护点】
1.一种自适应场景的文件传输方法,其特征在于,包括:
2.根据权利要求1所述的自适应场景的文件传输方法,其特征在于,在将所述第一类传输文件的集合分为若干次批量传输,并在单次批量传输后进行确认字符响应之前,还包括:
3.根据权利要求2所述的自适应场景的文件传输方法,其特征在于,所述网络状态包括网络延时,所述根据所述网络状态确认单次批量传输的所述第一类传输文件的数量,包括:
4.根据权利要求1所述的自适应场景的文件传输方法,其特征在于,在获取待传输文件的文件属性之后,还包括:
5.根据权利要求4所述的自适应场景的文件传输方法,其特征在于,在根据设定块大小对所述第二类传输文件进行分块处理得到若干文件块之前,包括:
6.根据权利要求5所述的自适应场景的文件传输方法,其特征在于,所述网络状态包括网络带宽,所述根据所述网络状态确定分块大小,包括:
7.根据权利要求4所述的自适应场景的文件传输方法,其特征在于,所述文件属性还包括文件类型,在对若干所述文件块进行并行传输或对所述第二类传输文件进行直接传输之前,包括:
< ...【技术特征摘要】
1.一种自适应场景的文件传输方法,其特征在于,包括:
2.根据权利要求1所述的自适应场景的文件传输方法,其特征在于,在将所述第一类传输文件的集合分为若干次批量传输,并在单次批量传输后进行确认字符响应之前,还包括:
3.根据权利要求2所述的自适应场景的文件传输方法,其特征在于,所述网络状态包括网络延时,所述根据所述网络状态确认单次批量传输的所述第一类传输文件的数量,包括:
4.根据权利要求1所述的自适应场景的文件传输方法,其特征在于,在获取待传输文件的文件属性之后,还包括:
5.根据权利要求4所述的自适应场景的文件传输方法,其特征在于,在根据设定块大小对所述第二类传输文件进行分块处理得到若干文件块之前,包括:
6.根据权利要求5所述的自适应场景的文件传输方法,其特征在...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。