CN115065676A - 一种上传文件的方法、装置以及电子设备 - Google Patents
一种上传文件的方法、装置以及电子设备 Download PDFInfo
- Publication number
- CN115065676A CN115065676A CN202210534590.0A CN202210534590A CN115065676A CN 115065676 A CN115065676 A CN 115065676A CN 202210534590 A CN202210534590 A CN 202210534590A CN 115065676 A CN115065676 A CN 115065676A
- Authority
- CN
- China
- Prior art keywords
- uploading
- target file
- historical
- channels
- upload
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 75
- 238000003860 storage Methods 0.000 claims abstract description 21
- 239000012634 fragment Substances 0.000 claims description 171
- 238000004590 computer program Methods 0.000 claims description 16
- 230000002829 reductive effect Effects 0.000 abstract description 20
- 230000005540 biological transmission Effects 0.000 description 41
- 230000000694 effects Effects 0.000 description 21
- 238000010586 diagram Methods 0.000 description 13
- 238000012545 processing Methods 0.000 description 13
- 230000003247 decreasing effect Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 230000006872 improvement Effects 0.000 description 9
- 238000013467 fragmentation Methods 0.000 description 8
- 238000006062 fragmentation reaction Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 4
- 238000005520 cutting process Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000750 progressive effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 229920001296 polysiloxane Polymers 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种上传文件的方法、装置、设备、存储介质及程序产品,该方法包括:获取目标文件的历史上传参数;根据所述历史上传参数,确定所述目标文件的上传通道数量;基于所述上传通道数量,为所述目标文件创建上传队列,通过所述上传队列上传所述目标文件。可见,本发明能够基于目标文件的历史上传参数来确定上传文件的上传通道数量,并基于确定出的上传通道数量来实施上传,从而能够更加灵活地根据上传参数调整上传的通道数量,实现适应网络情况的高效的数据上传,减少数据上传的失败和出错。
Description
技术领域
本发明涉及数据传输技术领域,尤其涉及一种上传文件的方法、装置、设备、存储介质及程序产品。
背景技术
随着基础网络设备的不断更新和改进,越来越多的设备采用将文件上传至云端服务器的方式去保存文件,这也对文件上传的效率和准确性提出了新的挑战。
现有的文件上传技术,一般仅考虑到采用单通道或者固定数量的多通道的上传的方式来降低文件上传的出错率,但通道数量的增加虽然在一定程度会帮助提高效率,但在带宽有限的情况下也会造成网络拥塞,反而降低了上传效率,现有技术没有考虑到灵活地对文件上传的通道数量进行调整,因此无法适应网络情况以实现效果最好的数据上传,可见,现有技术存在缺陷,亟待解决。
发明内容
本发明提供一种上传文件的方法、装置、设备、存储介质及程序产品,能够更加灵活地根据上传参数调整上传的通道数量,实现适应网络情况的高效的数据上传,减少数据上传的失败和出错。
为了解决上述技术问题,本发明第一方面公开了一种上传文件的方法,所述方法包括:
获取目标文件的历史上传参数;
根据所述历史上传参数,确定所述目标文件的上传通道数量;
基于所述上传通道数量,为所述目标文件创建上传队列,通过所述上传队列上传所述目标文件。
作为一种可选的实施方式,在本发明第一方面中,所述历史上传参数包括所述目标文件在至少一个历史时间段的至少一个上传通道内的上传速度和/或上传成功率。
作为一种可选的实施方式,在本发明第一方面中,所述根据所述历史上传参数,确定所述目标文件的上传通道数量,包括:
确定所述目标文件的历史上传通道数量;
判断所述历史上传参数是否大于预设的第一参数阈值,得到第一判断结果;
根据所述第一判断结果,修正所述历史上传通道数量以得到所述目标文件的上传通道数量。
作为一种可选的实施方式,在本发明第一方面中,所述根据所述第一判断结果,修正所述历史上传通道数量以得到所述目标文件的上传通道数量,包括:
若所述第一判断结果为是,增加所述历史上传通道数量以得到所述目标文件的上传通道数量;
若所述第一判断结果为否,减少所述历史上传通道数量以得到所述目标文件的上传通道数量。
作为一种可选的实施方式,在本发明第一方面中,所述根据所述第一判断结果,修正所述历史上传通道数量以得到所述目标文件的上传通道数量,包括:
确定所述目标文件对应的通道参数区间;
根据所述第一判断结果,修正所述历史上传通道数量以得到所述目标文件的上传通道数量;所述上传通道数量处于所述通道参数区间内。
作为一种可选的实施方式,在本发明第一方面中,所述获取目标文件的历史上传参数之后,所述方法还包括:
根据所述历史上传参数,确定所述目标文件的上传分片大小;
以及,所述基于所述上传通道数量,为所述目标文件创建上传队列,通过所述上传队列上传所述目标文件,包括:
基于所述上传分片大小和所述上传通道数量,为所述目标文件创建上传队列,通过所述上传队列上传所述目标文件。
作为一种可选的实施方式,在本发明第一方面中,所述上传分片大小为所述目标文件在任意至少一个上传通道内的上传分片大小,或在所有上传通道内的统一的上传分片大小。
作为一种可选的实施方式,在本发明第一方面中,所述根据所述历史上传参数,确定所述目标文件的上传分片大小,包括:
确定所述目标文件的历史上传分片大小;
判断所述历史上传参数是否大于预设的第二参数阈值,得到第二判断结果;
根据所述第二判断结果,修正所述历史上传分片大小以得到所述目标文件的上传分片大小。
本发明第二方面公开了一种上传文件的装置,所述装置包括:
参数获取模块,用于获取目标文件的历史上传参数;
通道确定模块,用于根据所述历史上传参数,确定所述目标文件的上传通道数量;
文件上传模块,用于基于所述上传通道数量,为所述目标文件创建上传队列,通过所述上传队列上传所述目标文件。
作为一种可选的实施方式,在本发明第二方面中,所述历史上传参数包括所述目标文件在至少一个历史时间段的至少一个上传通道内的上传速度和/或上传成功率。
作为一种可选的实施方式,在本发明第二方面中,所述通道确定模块包括:
历史确定单元,用于确定所述目标文件的历史上传通道数量;
阈值判断单元,用于判断所述历史上传参数是否大于预设的第一参数阈值,得到第一判断结果;
数量确定单元,用于根据所述第一判断结果,修正所述历史上传通道数量以得到所述目标文件的上传通道数量。
作为一种可选的实施方式,在本发明第二方面中,所述数量确定单元根据所述第一判断结果,修正所述历史上传通道数量以得到所述目标文件的上传通道数量的具体方式,包括:
若所述第一判断结果为是,增加所述历史上传通道数量以得到所述目标文件的上传通道数量;
若所述第一判断结果为否,减少所述历史上传通道数量以得到所述目标文件的上传通道数量。
作为一种可选的实施方式,在本发明第二方面中,所述数量确定单元根据所述第一判断结果,修正所述历史上传通道数量以得到所述目标文件的上传通道数量的具体方式,包括:
确定所述目标文件对应的通道参数区间;
根据所述第一判断结果,修正所述历史上传通道数量以得到所述目标文件的上传通道数量;所述上传通道数量处于所述通道参数区间内。
作为一种可选的实施方式,在本发明第二方面中,所述装置还包括:
分片确定模块,用于根据所述历史上传参数,确定所述目标文件的上传分片大小;
以及,所述文件上传模块基于所述上传通道数量,为所述目标文件创建上传队列,通过所述上传队列上传所述目标文件的具体方式,包括:
基于所述上传分片大小和所述上传通道数量,为所述目标文件创建上传队列,通过所述上传队列上传所述目标文件。
作为一种可选的实施方式,在本发明第二方面中,所述上传分片大小为所述目标文件在任意至少一个上传通道内的上传分片大小,或在所有上传通道内的统一的上传分片大小。
作为一种可选的实施方式,在本发明第二方面中,所述分片确定模块根据所述历史上传参数,确定所述目标文件的上传分片大小的具体方式,包括:
确定所述目标文件的历史上传分片大小;
判断所述历史上传参数是否大于预设的第二参数阈值,得到第二判断结果;
根据所述第二判断结果,修正所述历史上传分片大小以得到所述目标文件的上传分片大小。
本发明第三方面公开了一种电子设备,所述电子设备包括:
存储有可执行程序代码的存储器;
与所述存储器耦合的处理器;
所述处理器调用所述存储器中存储的所述可执行程序代码,执行本发明第一方面公开的上传文件的方法中的部分或全部步骤。
本发明第四方面公开了一种计算机存储介质,所述计算机存储介质存储有计算机指令,所述计算机指令被调用时,用于执行本发明第一方面公开的上传文件的方法中的部分或全部步骤。
本发明第五方面公开了一种计算机程序产品,所述产品包括计算机程序/指令,所述计算机程序/指令在被处理器执行时实现本发明第一方面公开的上传文件的方法中的部分或全部步骤。
与现有技术相比,本发明具有以下有益效果:
本发明能够基于目标文件的历史上传参数来确定上传文件的上传通道数量,并基于确定出的上传通道数量来实施上传,从而能够更加灵活地根据上传参数调整上传的通道数量,实现适应网络情况的高效的数据上传,减少数据上传的失败和出错。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例公开的一种上传文件的方法的流程示意图;
图2是本发明实施例公开的另一种上传文件的方法的流程示意图;
图3是本发明实施例公开的一种上传文件的装置的结构示意图;
图4是本发明实施例公开的另一种上传文件的装置的结构示意图;
图5是本发明实施例公开的一种电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或端没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或端固有的其他步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本发明公开了一种上传文件的方法、装置、设备、存储介质及程序产品,能够基于目标文件的历史上传参数来确定上传文件的上传通道数量,并基于确定出的上传通道数量来实施上传,从而能够更加灵活地根据上传参数调整上传的通道数量,实现适应网络情况的高效的数据上传,减少数据上传的失败和出错。以下分别进行详细说明。
实施例一
请参阅图1,图1是本发明实施例公开的一种上传文件的方法的流程示意图。其中,图1所描述的方法可以应用于相应的文件上传装置中,如用于进行数据上传的传输终端、传输设备或传输服务器,该服务器可以为云端服务器或本地服务器,本发明实施例不做限定。具体的,如图1所示,该上传文件的方法可以包括以下操作:
101、获取目标文件的历史上传参数。
本发明实施例中,目标文件可以为任意类型的文件,如视频文件、照片文件或文档文件,本发明不做限定。可选的,历史上传参数可以为目标文件正在传输的过程中的实时上传参数,此时其仍然是目标文件在历史时间段的上传参数,只是该历史时间段距离当前时间段的时间距离较小。可选的,目标文件也可以是通过分片上传的方式进行上传的文件,应用本发明的方法可以改进分片上传文件的效率。
可选的,历史上传参数包括目标文件在至少一个历史时间段的至少一个上传通道内的上传速度和/或上传成功率。可选的,目标文件的上传速度可以为目标文件在单位时间内上传的文件大小,在历史上传参数包括多个上传通道的信息时,其可以为单个通道内在单位时间内上传文件的大小与通道数量的乘积。
可选的,上传成功率可以为上传成功的数据包数量或大小,与总共上传的总数据包数量或大小之间的比值。可选的,可以通过获取目标文件的历史网络传输记录,并通过分析其中的网络链路错误记录等信息,来确定该上传成功率。
102、根据历史上传参数,确定目标文件的上传通道数量。
可选的,可以根据历史上传参数所表征的目标文件的上传效果,来调整目标文件的当前通道数量,以确定出上传通道数量。可选的,上传通道数量用于指示目标文件在传输时的并发通道数量。
103、基于上传通道数量,为目标文件创建上传队列,通过上传队列上传目标文件。
可选的,可以根据上传通道数量,为目标文件创建并发通道数量为该上传通道数量的上传队列,并通过执行该上传队列的上传操作,以将目标文件上传至目标的文件位置。可选的,若目标文件是正在传输的文件,也可以中断其传输,并将目标文件剩余的未传输的文件部分,基于该上传队列进行上传。
可见,实施本发明实施例所描述的方法能够基于目标文件的历史上传参数来确定上传文件的上传通道数量,并基于确定出的上传通道数量来实施上传,从而能够更加灵活地根据上传参数调整上传的通道数量,实现适应网络情况的高效的数据上传,减少数据上传的失败和出错。
作为一种可选的实施例,上述步骤102中的,根据历史上传参数,确定目标文件的上传通道数量,包括:
确定目标文件的历史上传通道数量;
判断历史上传参数是否大于预设的第一参数阈值,得到第一判断结果;
根据第一判断结果,修正历史上传通道数量以得到目标文件的上传通道数量。
可选的,目标文件的历史上传通道数量可以通过获取目标文件的历史传输队列的上传信息来确定得到。
可选的,第一参数阈值可以为第一上传成功率阈值或第一上传速度阈值,与历史上传参数的具体参数相对应,其可以由操作人员根据实验值或经验值进行确定,并通过实际效果进行调整。
可见,通过该可选的实施例,能够根据历史上传参数是否大于预设的第一参数阈值的判断结果,修正历史上传通道数量以得到目标文件的上传通道数量,从而可以更加准确地确定出上传通道数量,以实现适应网络情况的高效的数据上传。
作为一种可选的实施例,上述步骤中的,根据第一判断结果,修正历史上传通道数量以得到目标文件的上传通道数量,包括:
若第一判断结果为是,增加历史上传通道数量以得到目标文件的上传通道数量;
若第一判断结果为否,减少历史上传通道数量以得到目标文件的上传通道数量。
本可选的实施例的其中一个目的在于,在第一判断结果显示历史上传参数大于第一参数阈值时,也即目标文件的上传效果较好,说明此时网络环境能够承受更多的并发通道数量,将历史上传通道数量进行增加,以进一步利用网络资源,而在第一判断结果显示历史上传参数不大于第一参数阈值时,也即目标文件的上传效果较差,说明此时并发通道数量太多导致了网络出现拥塞,将历史上传通道数量进行减少,以避免网络传输效率降低。
可选的,增加或减少历史上传通道数量的具体数值,可以根据历史上传参数与第一参数阈值之间的差值来确定,可选的,增加或减少历史上传通道数量的具体数值与历史上传参数与第一参数阈值之间的差值绝对值成正比。
可见,通过该可选的实施例,能够根据历史上传参数是否大于预设的第一参数阈值的判断结果,增加或减少历史上传通道数量以得到目标文件的上传通道数量,从而可以更加准确地确定出适应网络情况的上传通道数量,以实现最大程度利用网络资源的数据上传。
作为一种可选的实施例,上述步骤中的,根据第一判断结果,修正历史上传通道数量以得到目标文件的上传通道数量,包括:
确定目标文件对应的通道参数区间;
根据第一判断结果,修正历史上传通道数量以得到目标文件的上传通道数量,其中,上传通道数量处于通道参数区间内。
可选的,根据第一判断结果,修正历史上传通道数量以得到目标文件的上传通道数量的具体方式可以参照上一可选的实施例中的细节。
可选的,通道参数区间一般与目标文件所在的上传设备和/或目标传输的接收文件设备的设备处理能力相关,其至少包括有最大通道参数和最小通道参数。可选的,考虑到上传设备的性能差别和接收文件设备的处理能力的差异,最小通道参数一般控制为1个通道,或2个至3个通道,而最大通道参数最多为上传设备或接受文件设备的CPU核心处理器的数量的2倍。可选的,通道参数区间也可以由操作人员根据实验值或经验值进行设定,并根据实际操作效果进行调整。
可见,通过该可选的实施例,能够控制确定出的上传通道数量处于通道参数区间内,从而可以更加准确地确定出适配于设备情况的上传通道数量,以避免通道数量过多造成设备处理成本过高或传输效率降低,进一步实现更高效的数据上传。
实施例二
请参阅图2,图2是本发明实施例公开的另一种上传文件的方法的流程示意图。其中,图2所描述的方法可以应用于相应的文件上传装置中,如用于进行数据上传的传输终端、传输设备或传输服务器,该服务器可以为云端服务器或本地服务器,本发明实施例不做限定。具体的,如图2所示,该上传文件的方法可以包括以下操作:
201、获取目标文件的历史上传参数。
202、根据历史上传参数,确定目标文件的上传通道数量。
其中,步骤201-202中的具体的技术细节,可以参照实施例一中对于步骤101-102的相应表述,本实施例在此不做赘述。
203、根据历史上传参数,确定目标文件的上传分片大小。
可选的,步骤202和203的执行顺序并不做限定,其可以同时执行或以任意次序先后执行。
可选的,可以根据历史上传参数所表征的目标文件的上传效果,来调整目标文件的当前分片大小,以确定出上传分片大小。可选的,上传分片大小用于指示目标文件在传输时的每一分片的数据量。
可选的,上传分片大小可以为目标文件在任意至少一个上传通道内的上传分片大小,或在所有上传通道内的统一的上传分片大小。可选的,当上传分片大小为目标文件在任意至少一个上传通道内的上传分片大小时,其所对应的上传通道,与历史上传参数所对应的上传通道相对应,从而可以实现针对特定上传通道的分片大小的调节。
204、基于上传分片大小和上传通道数量,为目标文件创建上传队列,通过上传队列上传目标文件。
可选的,可以根据上传分片大小计算剩余分片数,基于剩余分片数和上传分片大小计算每个分片的起止字节以对目标文件进行分片以得到多个分片文件,并根据上传通道数量,为多个分片文件创建并发通道数量为该上传通道数量的上传队列,通过执行该上传队列的上传操作,以将目标文件上传至目标的文件位置。可选的,若目标文件是正在传输的文件,也可以中断其传输,并将目标文件剩余的未传输的文件部分根据该上传分片大小进行分片,基于该上传队列进行上传。
具体的,若目标文件的大小小于或者等于上传分片大小,则采用单通道单个分片上传,而如果目标文件的大小大于上传分片大小,则获取以上传分片大小和上传通道数量构建的上传队列。
可见,通过本发明实施例,能够基于目标文件的历史上传参数来确定上传文件的上传通道数量以及上传分片大小,并基于确定出的上传通道数量以及上传分片大小来实施文件的分片上传,从而能够实现更加高效且适应网络情况的数据上传,减少分片上传的失败和出错。
作为一种可选的实施例,上述步骤203中的,根据历史上传参数,确定目标文件的上传分片大小,包括:
确定目标文件的历史上传分片大小;
判断历史上传参数是否大于预设的第二参数阈值,得到第二判断结果;
根据第二判断结果,修正历史上传分片大小以得到目标文件的上传分片大小。
可选的,目标文件的历史上传分片大小可以通过获取目标文件的历史传输队列的上传信息来确定得到。可选的,第二参数阈值可以为第二上传成功率阈值或第二上传速度阈值,与历史上传参数的具体参数相对应,其可以由操作人员根据实验值或经验值进行确定,并通过实际效果进行调整。
可选的,修正历史上传分片大小的方式,可以与步骤202中的具体的修正历史上传通道的方式(见实施例一中的技术细节)同时执行,例如,可以同时增大分片大小和通道数量,满足更好的网络状况,增大上传效率,也可以同时减小上传分片大小和分片数量,保证在网络不佳的情况下上传成功率。又例如,为了保证文件传输的效率,可以以通过一方面减少通道数量,一方面小幅度增加分片大小,或者一方面增加通道数量,一方面降低上传分片大小来达到更加平滑的总效率的调整,以满足不同的网络链路情况和设备性能差异。
可见,通过该可选的实施例,能够根据历史上传参数是否大于第二参数阈值的判断结果,修正历史上传分片大小以得到目标文件的上传分片大小,从而可以更加准确地确定出合适的上传分片大小,以实现更加高效且适应网络情况的数据上传。
作为一种可选的实施例,上述步骤中的,根据第二判断结果,修正历史上传分片大小以得到目标文件的上传分片大小,包括:
若第二判断结果为是,增加历史上传分片大小以得到目标文件的上传分片大小;
若第二判断结果为否,减少历史上传分片大小以得到目标文件的上传分片大小。
本可选的实施例的其中一个目的在于,上传分片大小的大小同样会影响文件上传的效率,也与传输成本相关,若上传分片大小太小,则上传通道单个请求有效数据量太少,浪费资源,若太大,则导致单个分片上传耗损资源太多,服务端接受和存储和校验时间变长,整体耗时变长,同时,如果网络链路状态不佳,则有可能导致分片上传失败需重新上传,资源耗损太大,给用户反馈的时间也变长,影响用户体验。
因此,本可选的实施例中,在第二判断结果显示历史上传参数大于第二参数阈值时,也即目标文件的上传效果较好,说明此时的分片数量能够达到较好的传输效果,将历史上传分片大小进行增加,减少分片数量,降低传输成本,而在第二判断结果显示历史上传参数不大于第二参数阈值时,也即目标文件的上传效果较差,说明此时分片数量太少导致了传输效率降低,将历史上传分片大小进行减少,增加分片数量,以提高网络传输效率。
可选的,增加或减少历史上传分片大小的具体数值,可以根据历史上传参数与第二参数阈值之间的差值来确定,可选的,增加或减少历史上传分片大小的具体数值与历史上传参数与第二参数阈值之间的差值绝对值成正比。
可见,通过该可选的实施例,能够根据历史上传参数是否大于第二参数阈值的判断结果,增加或减少历史上传分片大小以得到目标文件的上传分片大小,从而可以更加准确地确定出成本更低和更加适应网络情况的上传分片大小,以实现高效和低成本的数据上传。
作为一种可选的实施例,上述步骤中的,根据第二判断结果,修正历史上传分片大小以得到目标文件的上传分片大小,包括:
确定目标文件对应的分片参数区间;
根据第二判断结果,修正历史上传分片大小以得到目标文件的上传分片大小,其中,上传分片大小处于分片参数区间内。
可选的,根据第二判断结果,修正历史上传分片大小以得到目标文件的上传分片大小的具体方式可以参照上一可选的实施例中的细节。
可选的,上传分片大小和/或历史上传分片大小可以为预设的最小分片大小的倍数,以方便切割计算。可选的,分片参数区间至少包括有最大分片参数和最小分片参数。例如将最小分片大小设定为512KB,那么可将最大分片参数设定为8192KB,每次分片大小修正的最小数量为512KB。这样即使本次上传不成功,下一次上传时也可以切割成多个最小分片,以满足最低的上传效率的要求。
可见,通过该可选的实施例,能够控制确定出的上传分片大小处于分片参数区间内,从而可以更加准确地确定出便于切割计算的上传分片大小,以避免分片大小混乱造成后续切割计算或网络传输出现障碍,进一步实现更高效的数据上传。
实施例三
请参阅图3,图3是本发明实施例公开的一种上传文件的装置的结构示意图。其中,图3所描述的装置可以应用于相应的数据处理装置中,如用于进行数据上传的传输终端、传输设备或传输服务器,该服务器可以为云端服务器或本地服务器。如图3所示,该装置可以包括:
参数获取模块301,用于获取目标文件的历史上传参数。
本发明实施例中,目标文件可以为任意类型的文件,如视频文件、照片文件或文档文件,本发明不做限定。可选的,历史上传参数可以为目标文件正在传输的过程中的实时上传参数,此时其仍然是目标文件在历史时间段的上传参数,只是该历史时间段距离当前时间段的时间距离较小。可选的,目标文件也可以是通过分片上传的方式进行上传的文件,应用本发明的方法可以改进分片上传文件的效率。
可选的,历史上传参数包括目标文件在至少一个历史时间段的至少一个上传通道内的上传速度和/或上传成功率。可选的,目标文件的上传速度可以为目标文件在单位时间内上传的文件大小,在历史上传参数包括多个上传通道的信息时,其可以为单个通道内在单位时间内上传文件的大小与通道数量的乘积。
可选的,上传成功率可以为上传成功的数据包数量或大小,与总共上传的总数据包数量或大小之间的比值。可选的,可以通过获取目标文件的历史网络传输记录,并通过分析其中的网络链路错误记录等信息,来确定该上传成功率。
通道确定模块302,用于根据历史上传参数,确定目标文件的上传通道数量。
可选的,可以根据历史上传参数所表征的目标文件的上传效果,来调整目标文件的当前通道数量,以确定出上传通道数量。可选的,上传通道数量用于指示目标文件在传输时的并发通道数量。
文件上传模块303,用于基于上传通道数量,为目标文件创建上传队列,通过上传队列上传目标文件。
可选的,可以根据上传通道数量,为目标文件创建并发通道数量为该上传通道数量的上传队列,并通过执行该上传队列的上传操作,以将目标文件上传至目标的文件位置。可选的,若目标文件是正在传输的文件,也可以中断其传输,并将目标文件剩余的未传输的文件部分,基于该上传队列进行上传。
可见,实施本发明实施例所描述的装置能够基于目标文件的历史上传参数来确定上传文件的上传通道数量,并基于确定出的上传通道数量来实施上传,从而能够更加灵活地根据上传参数调整上传的通道数量,实现适应网络情况的高效的数据上传,减少数据上传的失败和出错。
作为一种可选的实施例,如图4所示,通道确定模块302包括:
历史确定单元3021,用于确定目标文件的历史上传通道数量;
阈值判断单元3022,用于判断历史上传参数是否大于预设的第一参数阈值,得到第一判断结果;
数量确定单元3023,用于根据第一判断结果,修正历史上传通道数量以得到目标文件的上传通道数量。
可选的,目标文件的历史上传通道数量可以通过获取目标文件的历史传输队列的上传信息来确定得到。
可选的,第一参数阈值可以为第一上传成功率阈值或第一上传速度阈值,与历史上传参数的具体参数相对应,其可以由操作人员根据实验值或经验值进行确定,并通过实际效果进行调整。
可见,通过该可选的实施例,能够根据历史上传参数是否大于预设的第一参数阈值的判断结果,修正历史上传通道数量以得到目标文件的上传通道数量,从而可以更加准确地确定出上传通道数量,以实现适应网络情况的高效的数据上传。
作为一种可选的实施例,数量确定单元3023根据第一判断结果,修正历史上传通道数量以得到目标文件的上传通道数量的具体方式,包括:
若第一判断结果为是,增加历史上传通道数量以得到目标文件的上传通道数量;
若第一判断结果为否,减少历史上传通道数量以得到目标文件的上传通道数量。
本可选的实施例的其中一个目的在于,在第一判断结果显示历史上传参数大于第一参数阈值时,也即目标文件的上传效果较好,说明此时网络环境能够承受更多的并发通道数量,将历史上传通道数量进行增加,以进一步利用网络资源,而在第一判断结果显示历史上传参数不大于第一参数阈值时,也即目标文件的上传效果较差,说明此时并发通道数量太多导致了网络出现拥塞,将历史上传通道数量进行减少,以避免网络传输效率降低。
可选的,增加或减少历史上传通道数量的具体数值,可以根据历史上传参数与第一参数阈值之间的差值来确定,可选的,增加或减少历史上传通道数量的具体数值与历史上传参数与第一参数阈值之间的差值绝对值成正比。
可见,通过该可选的实施例,能够根据历史上传参数是否大于预设的第一参数阈值的判断结果,增加或减少历史上传通道数量以得到目标文件的上传通道数量,从而可以更加准确地确定出适应网络情况的上传通道数量,以实现最大程度利用网络资源的数据上传。
作为一种可选的实施例,数量确定单元3023根据第一判断结果,修正历史上传通道数量以得到目标文件的上传通道数量的具体方式,包括:
确定目标文件对应的通道参数区间;
根据第一判断结果,修正历史上传通道数量以得到目标文件的上传通道数量,其中,上传通道数量处于通道参数区间内。
可选的,根据第一判断结果,修正历史上传通道数量以得到目标文件的上传通道数量的具体方式可以参照上一可选的实施例中的细节。
可选的,通道参数区间一般与目标文件所在的上传设备和/或目标传输的接收文件设备的设备处理能力相关,其至少包括有最大通道参数和最小通道参数。可选的,考虑到上传设备的性能差别和接收文件设备的处理能力的差异,最小通道参数一般控制为1个通道,或2个至3个通道,而最大通道参数最多为上传设备或接受文件设备的CPU核心处理器的数量的2倍。可选的,通道参数区间也可以由操作人员根据实验值或经验值进行设定,并根据实际操作效果进行调整。
可见,通过该可选的实施例,能够控制确定出的上传通道数量处于通道参数区间内,从而可以更加准确地确定出适配于设备情况的上传通道数量,以避免通道数量过多造成设备处理成本过高或传输效率降低,进一步实现更高效的数据上传。
作为一种可选的实施例,如图4所示,该装置还包括:
分片确定模块304,用于根据历史上传参数,确定目标文件的上传分片大小。
可选的,可以根据历史上传参数所表征的目标文件的上传效果,来调整目标文件的当前分片大小,以确定出上传分片大小。可选的,上传分片大小用于指示目标文件在传输时的每一分片的数据量。
可选的,上传分片大小可以为目标文件在任意至少一个上传通道内的上传分片大小,或在所有上传通道内的统一的上传分片大小。可选的,当上传分片大小为目标文件在任意至少一个上传通道内的上传分片大小时,其所对应的上传通道,与历史上传参数所对应的上传通道相对应,从而可以实现针对特定上传通道的分片大小的调节。
相应的,文件上传模块303基于上传通道数量,为目标文件创建上传队列,通过上传队列上传目标文件的具体方式,包括:
基于上传分片大小和上传通道数量,为目标文件创建上传队列,通过上传队列上传目标文件。
可选的,可以根据上传分片大小计算剩余分片数,基于剩余分片数和上传分片大小计算每个分片的起止字节以对目标文件进行分片以得到多个分片文件,并根据上传通道数量,为多个分片文件创建并发通道数量为该上传通道数量的上传队列,通过执行该上传队列的上传操作,以将目标文件上传至目标的文件位置。可选的,若目标文件是正在传输的文件,也可以中断其传输,并将目标文件剩余的未传输的文件部分根据该上传分片大小进行分片,基于该上传队列进行上传。
具体的,若目标文件的大小小于或者等于上传分片大小,则采用单通道单个分片上传,而如果目标文件的大小大于上传分片大小,则获取以上传分片大小和上传通道数量构建的上传队列。
可见,通过本可选的实施例,能够基于目标文件的历史上传参数来确定上传文件的上传通道数量以及上传分片大小,并基于确定出的上传通道数量以及上传分片大小来实施文件的分片上传,从而能够实现更加高效且适应网络情况的数据上传,减少分片上传的失败和出错。
作为一种可选的实施例,分片确定模块304根据历史上传参数,确定目标文件的上传分片大小的具体方式,包括:
确定目标文件的历史上传分片大小;
判断历史上传参数是否大于预设的第二参数阈值,得到第二判断结果;
根据第二判断结果,修正历史上传分片大小以得到目标文件的上传分片大小。
可选的,目标文件的历史上传分片大小可以通过获取目标文件的历史传输队列的上传信息来确定得到。可选的,第二参数阈值可以为第二上传成功率阈值或第二上传速度阈值,与历史上传参数的具体参数相对应,其可以由操作人员根据实验值或经验值进行确定,并通过实际效果进行调整。
可选的,修正历史上传分片大小的方式,可以与步骤202中的具体的修正历史上传通道的方式(见实施例一中的技术细节)同时执行,例如,可以同时增大分片大小和通道数量,满足更好的网络状况,增大上传效率,也可以同时减小上传分片大小和分片数量,保证在网络不佳的情况下上传成功率。又例如,为了保证文件传输的效率,可以以通过一方面减少通道数量,一方面小幅度增加分片大小,或者一方面增加通道数量,一方面降低上传分片大小来达到更加平滑的总效率的调整,以满足不同的网络链路情况和设备性能差异。
可见,通过该可选的实施例,能够根据历史上传参数是否大于第二参数阈值的判断结果,修正历史上传分片大小以得到目标文件的上传分片大小,从而可以更加准确地确定出合适的上传分片大小,以实现更加高效且适应网络情况的数据上传。
作为一种可选的实施例,分片确定模块304根据第二判断结果,修正历史上传分片大小以得到目标文件的上传分片大小的具体方式,包括:
若第二判断结果为是,增加历史上传分片大小以得到目标文件的上传分片大小;
若第二判断结果为否,减少历史上传分片大小以得到目标文件的上传分片大小。
本可选的实施例的其中一个目的在于,上传分片大小的大小同样会影响文件上传的效率,也与传输成本相关,若上传分片大小太小,则上传通道单个请求有效数据量太少,浪费资源,若太大,则导致单个分片上传耗损资源太多,服务端接受和存储和校验时间变长,整体耗时变长,同时,如果网络链路状态不佳,则有可能导致分片上传失败需重新上传,资源耗损太大,给用户反馈的时间也变长,影响用户体验。
因此,本可选的实施例中,在第二判断结果显示历史上传参数大于第二参数阈值时,也即目标文件的上传效果较好,说明此时的分片数量能够达到较好的传输效果,将历史上传分片大小进行增加,减少分片数量,降低传输成本,而在第二判断结果显示历史上传参数不大于第二参数阈值时,也即目标文件的上传效果较差,说明此时分片数量太少导致了传输效率降低,将历史上传分片大小进行减少,增加分片数量,以提高网络传输效率。
可选的,增加或减少历史上传分片大小的具体数值,可以根据历史上传参数与第二参数阈值之间的差值来确定,可选的,增加或减少历史上传分片大小的具体数值与历史上传参数与第二参数阈值之间的差值绝对值成正比。
可见,通过该可选的实施例,能够根据历史上传参数是否大于第二参数阈值的判断结果,增加或减少历史上传分片大小以得到目标文件的上传分片大小,从而可以更加准确地确定出成本更低和更加适应网络情况的上传分片大小,以实现高效和低成本的数据上传。
作为一种可选的实施例,分片确定模块304根据第二判断结果,修正历史上传分片大小以得到目标文件的上传分片大小的具体方式,包括:
确定目标文件对应的分片参数区间;
根据第二判断结果,修正历史上传分片大小以得到目标文件的上传分片大小,其中,上传分片大小处于分片参数区间内。
可选的,根据第二判断结果,修正历史上传分片大小以得到目标文件的上传分片大小的具体方式可以参照上一可选的实施例中的细节。
可选的,上传分片大小和/或历史上传分片大小可以为预设的最小分片大小的倍数,以方便切割计算。可选的,分片参数区间至少包括有最大分片参数和最小分片参数。例如将最小分片大小设定为512KB,那么可将最大分片参数设定为8192KB,每次分片大小修正的最小数量为512KB。这样即使本次上传不成功,下一次上传时也可以切割成多个最小分片,以满足最低的上传效率的要求。
可见,通过该可选的实施例,能够控制确定出的上传分片大小处于分片参数区间内,从而可以更加准确地确定出便于切割计算的上传分片大小,以避免分片大小混乱造成后续切割计算或网络传输出现障碍,进一步实现更高效的数据上传。
实施例四
请参阅图4,图4是本发明实施例公开的一种电子设备的结构示意图。如图4所示,该电子设备可以包括:
存储有可执行程序代码的存储器401;
与存储器401耦合的处理器402;
处理器402调用存储器401中存储的可执行程序代码,执行本发明实施例一和二所公开的上传文件的方法中的部分或全部步骤。
关于上述电子设备执行所述计算机程序时实现所述上传文件的具体技术细节已在前述方法步骤中详细论述,故此不做赘述。
实施例五
本发明实施例公开了一种计算机存储介质,该计算机存储介质存储有计算机指令,该计算机指令被调用时,用于执行本发明实施例一和二所公开的上传文件的方法中的部分或全部步骤。
实施例六
本发明实施例公开了一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令在被处理器执行时实现本发明实施例一和二所公开的上传文件的方法中的部分或全部步骤。
上述对本说明书特定实施例进行了描述,其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,附图中描绘的过程不一定必须按照示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备、非易失性计算机可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书实施例提供的装置、设备、非易失性计算机可读存储介质与方法是对应的,因此,装置、设备、非易失性计算机存储介质也具有与对应方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述对应装置、设备、非易失性计算机存储介质的有益技术效果。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field ProgrammableGateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera HardwareDescriptionLanguage)、Confluence、CUPL(Cornell University ProgrammingLanguage)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本说明书实施例可提供为方法、系统、或计算机程序产品。因此,本说明书实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带式磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后应说明的是:本发明实施例公开的一种上传文件的方法、装置、设备、存储介质及程序产品所揭露的仅为本发明较佳实施例而已,仅用于说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述各项实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或替换,并不使相应的技术方案的本质脱离本发明各项实施例技术方案的精神和范围。
Claims (12)
1.一种上传文件的方法,其特征在于,所述方法包括:
获取目标文件的历史上传参数;
根据所述历史上传参数,确定所述目标文件的上传通道数量;
基于所述上传通道数量,为所述目标文件创建上传队列,通过所述上传队列上传所述目标文件。
2.根据权利要求1所述的上传文件的方法,其特征在于,所述根据所述历史上传参数,确定所述目标文件的上传通道数量,包括:
确定所述目标文件的历史上传通道数量;
判断所述历史上传参数是否大于预设的第一参数阈值,得到第一判断结果;
根据所述第一判断结果,修正所述历史上传通道数量以得到所述目标文件的上传通道数量。
3.根据权利要求2所述的上传文件的方法,其特征在于,所述根据所述第一判断结果,修正所述历史上传通道数量以得到所述目标文件的上传通道数量,包括:
若所述第一判断结果为是,增加所述历史上传通道数量以得到所述目标文件的上传通道数量;
若所述第一判断结果为否,减少所述历史上传通道数量以得到所述目标文件的上传通道数量。
4.根据权利要求2所述的上传文件的方法,其特征在于,所述根据所述第一判断结果,修正所述历史上传通道数量以得到所述目标文件的上传通道数量,包括:
确定所述目标文件对应的通道参数区间;
根据所述第一判断结果,修正所述历史上传通道数量以得到所述目标文件的上传通道数量;所述上传通道数量处于所述通道参数区间内。
5.根据权利要求1-4任一项所述的上传文件的方法,其特征在于,所述获取目标文件的历史上传参数之后,所述方法还包括:
根据所述历史上传参数,确定所述目标文件的上传分片大小;
以及,所述基于所述上传通道数量,为所述目标文件创建上传队列,通过所述上传队列上传所述目标文件,包括:
基于所述上传分片大小和所述上传通道数量,为所述目标文件创建上传队列,通过所述上传队列上传所述目标文件。
6.根据权利要求5所述的上传文件的方法,其特征在于,所述上传分片大小为所述目标文件在任意至少一个上传通道内的上传分片大小,或在所有上传通道内的统一的上传分片大小。
7.根据权利要求5所述的上传文件的方法,其特征在于,所述根据所述历史上传参数,确定所述目标文件的上传分片大小,包括:
确定所述目标文件的历史上传分片大小;
判断所述历史上传参数是否大于预设的第二参数阈值,得到第二判断结果;
根据所述第二判断结果,修正所述历史上传分片大小以得到所述目标文件的上传分片大小。
8.根据权利要求1-4任一项所述的上传文件的方法,其特征在于,所述历史上传参数包括所述目标文件在至少一个历史时间段的至少一个上传通道内的上传速度和/或上传成功率。
9.一种上传文件的装置,其特征在于,所述装置包括:
参数获取模块,用于获取目标文件的历史上传参数;
通道确定模块,用于根据所述历史上传参数,确定所述目标文件的上传通道数量;
文件上传模块,用于基于所述上传通道数量,为所述目标文件创建上传队列,通过所述上传队列上传所述目标文件。
10.一种电子设备,其特征在于,所述电子设备包括:
存储有可执行程序代码的存储器;
与所述存储器耦合的处理器;
所述处理器调用所述存储器中存储的所述可执行程序代码,执行如权利要求1-8任一项所述的上传文件的方法。
11.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机指令,所述计算机指令被调用时,用于执行如权利要求1-8任一项所述的上传文件的方法。
12.一种计算机程序产品,包括计算机程序/指令,其特征在于,所述计算机程序/指令在被处理器执行时实现如权利要求1-8任一项所述的上传文件的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210534590.0A CN115065676A (zh) | 2022-05-17 | 2022-05-17 | 一种上传文件的方法、装置以及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210534590.0A CN115065676A (zh) | 2022-05-17 | 2022-05-17 | 一种上传文件的方法、装置以及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115065676A true CN115065676A (zh) | 2022-09-16 |
Family
ID=83198751
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210534590.0A Pending CN115065676A (zh) | 2022-05-17 | 2022-05-17 | 一种上传文件的方法、装置以及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115065676A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160234303A1 (en) * | 2013-10-18 | 2016-08-11 | Tencent Technology (Shenzhen) Company Limited | Peer-to-Peer Upload Scheduling |
CN112152759A (zh) * | 2020-10-14 | 2020-12-29 | 平安科技(深圳)有限公司 | 一种数据传输方法、数据传输系统、设备及存储介质 |
CN112583904A (zh) * | 2020-12-04 | 2021-03-30 | 北京百度网讯科技有限公司 | 文件上传方法、装置、设备以及存储介质 |
CN114221954A (zh) * | 2021-12-07 | 2022-03-22 | 中国电信股份有限公司 | 文件传输方法及装置、电子设备及存储介质 |
CN114285838A (zh) * | 2021-12-22 | 2022-04-05 | 中国农业银行股份有限公司 | 一种文件上传方法、装置、系统、存储介质及电子设备 |
-
2022
- 2022-05-17 CN CN202210534590.0A patent/CN115065676A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160234303A1 (en) * | 2013-10-18 | 2016-08-11 | Tencent Technology (Shenzhen) Company Limited | Peer-to-Peer Upload Scheduling |
CN112152759A (zh) * | 2020-10-14 | 2020-12-29 | 平安科技(深圳)有限公司 | 一种数据传输方法、数据传输系统、设备及存储介质 |
CN112583904A (zh) * | 2020-12-04 | 2021-03-30 | 北京百度网讯科技有限公司 | 文件上传方法、装置、设备以及存储介质 |
CN114221954A (zh) * | 2021-12-07 | 2022-03-22 | 中国电信股份有限公司 | 文件传输方法及装置、电子设备及存储介质 |
CN114285838A (zh) * | 2021-12-22 | 2022-04-05 | 中国农业银行股份有限公司 | 一种文件上传方法、装置、系统、存储介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11025745B2 (en) | Technologies for end-to-end quality of service deadline-aware I/O scheduling | |
CN108089814B (zh) | 一种数据存储方法及装置 | |
US11182216B2 (en) | Auto-scaling cloud-based computing clusters dynamically using multiple scaling decision makers | |
CN109617829B (zh) | 一种业务请求数据的处理方法、装置及系统 | |
US9513835B2 (en) | Impact-based migration scheduling from a first tier at a source to a second tier at a destination | |
WO2020238065A1 (zh) | 媒体文件的下载方法、装置、终端和介质 | |
WO2017106997A1 (en) | Techniques for co-migration of virtual machines | |
CN113391765A (zh) | 基于分布式存储系统的数据存储方法、装置、设备及介质 | |
JP6966432B2 (ja) | クラウドファイル処理方法および装置 | |
CN111917867A (zh) | 上传Web文件的方法及装置 | |
CN111490947A (zh) | 数据包发送方法、数据包接收方法、系统、设备及介质 | |
JP2022515255A (ja) | スケジューリング方法及び装置、電子デバイス並びに記録媒体 | |
CN115190078A (zh) | 一种访问流量控制方法、装置、设备以及存储介质 | |
CN106611005B (zh) | 一种设置爬虫爬取时间间隔的方法及装置 | |
CN104486442A (zh) | 分布式存储系统的数据传输方法、装置 | |
CN111294377A (zh) | 一种依赖关系的网络请求发送方法、终端装置及存储介质 | |
CN115065676A (zh) | 一种上传文件的方法、装置以及电子设备 | |
US9298652B2 (en) | Moderated completion signaling | |
CN113190481B (zh) | 数据传输方法、装置、电子设备及计算机可读存储介质 | |
US20190104017A1 (en) | Accelerating machine learning and profiling over a network | |
CN112182454A (zh) | 一种网页优化的方法、装置及存储介质、电子设备 | |
CN106331577B (zh) | 一种调整编码的方法及装置 | |
CN114124838B (zh) | 大数据平台的数据传输方法、装置及大数据平台管理系统 | |
CN111010349B (zh) | 针对首屏的传输加速方法及装置 | |
EP4163791A1 (en) | Artificial neural network module for performing artificial neural network operation on plurality of subgraphs and operating method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |