一种文件上传的控制方法、装置、电子设备及存储介质制造方法及图纸

技术编号:35216499 阅读:13 留言:0更新日期:2022-10-15 10:31
本申请提供了一种文件上传的控制方法、装置、电子设备及存储介质,所述控制方法包括:响应于文件上传的触控操作,获取目标上传文件;根据获取到的当前网络的网络信息,确定目标上传文件的分片大小;根据目标上传文件的分片大小确定目标上传文件的上传模式;根据分片大小和上传模式将目标上传文件切割分片,将切割分片后的至少一个文件分片放入至分片队列中进行发送;针对于分片队列中的每个文件分片,将文件分片按照上传模式发送至服务器进行云存储。采用本申请提供的技术方案能够通过获取当前网络的网络信息,确定目标上传文件的分片大小和上传模式,充分利用了当前的网络环境,提高了弱网环境下文件上传的成功率。高了弱网环境下文件上传的成功率。高了弱网环境下文件上传的成功率。

【技术实现步骤摘要】
一种文件上传的控制方法、装置、电子设备及存储介质


[0001]本申请涉及数据处理
,尤其是涉及一种文件上传的控制方法、装置、电子设备及存储介质。

技术介绍

[0002]在将文件上传进行云存储的过程中,大致可以分为两种形式,第一种:单文件上传形式,需要把待上传的文件组成一个数据包发送至服务器进行云存储;第二种:分片上传形式,需要把待上传的文件按照预先设置的分片大小切割分片,每个分片单独组织一个数据包发送至服务器,最后服务器端确认所有分片完成上传后,再通过文件合并进行云存储。
[0003]目前,针对于上述第一种单文件上传形式,在上传较大文件时容易受到网络影响导致该文件传输失败;针对于上述第二种分片上传形式虽然一定程度上解决了较大文件单次上传时容易传输失败的问题,但是这种分片上传形式无法充分利用当前的网络环境,在弱网环境下会导致文件传输失败率较高;因此,如何上传文件,提高弱网环境下文件上传的成功率,成为了亟待解决的问题。

技术实现思路

[0004]有鉴于此,本申请的目的在于提供一种文件上传的控制方法、装置、电子设备及存储介质,能够通过获取当前网络的网络信息,确定目标上传文件的分片大小和上传模式,根据确定出的分片大小和上传模式对目标上传文件切割分片,将切割分片后的文件分片发送至服务器,充分利用了当前的网络环境,提高了弱网环境下文件上传的成功率。
[0005]本申请主要包括以下几个方面:
[0006]第一方面,本申请实施例提供了一种文件上传的控制方法,所述控制方法包括:
[0007]响应于文件上传的触控操作,获取目标上传文件;
[0008]根据获取到的当前网络的网络信息,确定所述目标上传文件的分片大小;
[0009]根据所述目标上传文件的分片大小确定所述目标上传文件的上传模式;
[0010]根据所述分片大小和所述上传模式将所述目标上传文件切割分片,将所述切割分片后的至少一个文件分片放入至分片队列中进行发送;
[0011]针对于所述分片队列中的每个文件分片,将所述文件分片按照所述上传模式发送至服务器进行云存储。
[0012]进一步的,所述网络信息包括丢包率、可用带宽以及网络延迟;所述根据获取到的当前网络的网络信息,确定所述目标上传文件的分片大小的步骤,包括:
[0013]根据获取到的当前网络的网络信息,确定是否满足所述网络信息中的丢包率小于预设丢包率阈值、网络延迟小于预设延迟阈值且可用带宽不小于预设带宽阈值的条件;
[0014]若满足所述网络信息中的丢包率小于预设丢包率阈值、网络延迟小于预设延迟阈值且可用带宽不小于预设带宽阈值的条件,则将当前网络确定为正常网络,并将预设分片大小确定为所述目标上传文件的分片大小;
[0015]若不满足所述网络信息中的丢包率小于预设丢包率阈值、网络延迟小于预设延迟阈值且可用带宽不小于预设带宽阈值的条件,则将当前网络确定为非正常网络,并根据获取到的丢包率、可用带宽以及网络延迟,在预先设置的丢包率、可用带宽、网络延迟以及分片大小的映射关系中,确定出所述目标上传文件对应的分片大小。
[0016]进一步的,所述根据所述目标上传文件的分片大小确定所述目标上传文件的上传模式的步骤,包括:
[0017]根据所述目标上传文件的分片大小,确定所述目标上传文件的分片大小是否小于预设分片大小;
[0018]若小于,则将所述目标上传文件的上传模式确定为串行上传模式;
[0019]若不小于,则将所述目标上传文件的上传模式确定为并行上传模式。
[0020]进一步的,通过以下步骤将所述目标上传文件切割分片:
[0021]若所述上传模式为串行上传模式,则将所述目标上传文件按照所述分片大小切割分片出一个文件分片以将该文件分片单独发送至所述服务器;
[0022]若所述上传模式为并行上传模式,则根据预先设置的上传带宽占比确定所述并行上传模式的并发数,并将所述目标上传文件按照所述分片大小切割分片出并发数个文件分片以将所述并发数个文件分片同时发送至所述服务器。
[0023]进一步的,所述根据预先设置的上传带宽占比确定所述并行上传模式的并发数的步骤,包括:
[0024]根据预先设置的上传带宽占比,将获取到的网络信息中的可用带宽和所述上传带宽占比的乘积确定为目标上传带宽;
[0025]将所述目标上传带宽和所述分片大小的商确定为所述并行上传模式的并发数。
[0026]进一步的,所述确定所述目标上传文件的分片大小之前,通过以下步骤获取当前网络的网络信息:
[0027]根据获取到的所述目标上传文件,确定当前网络是否可用;
[0028]若可用,则将网络嗅探包发送至服务器;其中,所述网络嗅探包包括服务器用于计算当前网络的丢包率和可用带宽的UDP嗅探包以及用于计算当前网络的网络延迟的TCP嗅探包;
[0029]获取所述服务器基于所述网络嗅探包反馈的当前网络的包括丢包率、可用带宽和网络延迟的网络信息。
[0030]进一步的,所述将所述文件分片按照所述上传模式发送至服务器进行云存储之后,所述控制方法还包括:
[0031]每隔预设时间间隔将网络嗅探包发送至服务器,获取所述服务器基于所述网络嗅探包反馈的当前网络的网络信息;
[0032]根据所述服务器反馈的当前网络的网络信息确定是否更新所述目标上传文件的分片大小和所述目标上传文件的上传模式;
[0033]若更新,则将上一次切割分片后剩余的目标上传文件按照更新后的分片大小和更新后的上传模式继续进行切割分片,并将重新切割分片得到的至少一个文件分片放入所述分片队列中按照所述更新后的上传模式发送至服务端进行云存储。
[0034]第二方面,本申请实施例还提供了一种文件上传的控制装置,所述控制装置包括:
[0035]响应模块,用于响应于文件上传的触控操作,获取目标上传文件;
[0036]第一确定模块,用于根据获取到的当前网络的网络信息,确定所述目标上传文件的分片大小;
[0037]第二确定模块,用于根据所述目标上传文件的分片大小确定所述目标上传文件的上传模式;
[0038]处理模块,用于根据所述分片大小和所述上传模式将所述目标上传文件切割分片,将所述切割分片后的至少一个文件分片放入至分片队列中进行发送;
[0039]发送模块,用于针对于所述分片队列中的每个文件分片,将所述文件分片按照所述上传模式发送至服务器进行云存储。
[0040]第三方面,本申请实施例还提供一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如上述的文件上传的控制方法的步骤。
[0041]第四方面,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如上述的文件上传的控制方法本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种文件上传的控制方法,其特征在于,所述控制方法包括:响应于文件上传的触控操作,获取目标上传文件;根据获取到的当前网络的网络信息,确定所述目标上传文件的分片大小;根据所述目标上传文件的分片大小确定所述目标上传文件的上传模式;根据所述分片大小和所述上传模式将所述目标上传文件切割分片,将所述切割分片后的至少一个文件分片放入至分片队列中进行发送;针对于所述分片队列中的每个文件分片,将所述文件分片按照所述上传模式发送至服务器进行云存储。2.根据权利要求1所述的控制方法,其特征在于,所述网络信息包括丢包率、可用带宽以及网络延迟;所述根据获取到的当前网络的网络信息,确定所述目标上传文件的分片大小的步骤,包括:根据获取到的当前网络的网络信息,确定是否满足所述网络信息中的丢包率小于预设丢包率阈值、网络延迟小于预设延迟阈值且可用带宽不小于预设带宽阈值的条件;若满足所述网络信息中的丢包率小于预设丢包率阈值、网络延迟小于预设延迟阈值且可用带宽不小于预设带宽阈值的条件,则将当前网络确定为正常网络,并将预设分片大小确定为所述目标上传文件的分片大小;若不满足所述网络信息中的丢包率小于预设丢包率阈值、网络延迟小于预设延迟阈值且可用带宽不小于预设带宽阈值的条件,则将当前网络确定为非正常网络,并根据获取到的丢包率、可用带宽以及网络延迟,在预先设置的丢包率、可用带宽、网络延迟以及分片大小的映射关系中,确定出所述目标上传文件对应的分片大小。3.根据权利要求1所述的控制方法,其特征在于,所述根据所述目标上传文件的分片大小确定所述目标上传文件的上传模式的步骤,包括:根据所述目标上传文件的分片大小,确定所述目标上传文件的分片大小是否小于预设分片大小;若小于,则将所述目标上传文件的上传模式确定为串行上传模式;若不小于,则将所述目标上传文件的上传模式确定为并行上传模式。4.根据权利要求1所述的控制方法,其特征在于,通过以下步骤将所述目标上传文件切割分片:若所述上传模式为串行上传模式,则将所述目标上传文件按照所述分片大小切割分片出一个文件分片以将该文件分片单独发送至所述服务器;若所述上传模式为并行上传模式,则根据预先设置的上传带宽占比确定所述并行上传模式的并发数,并将所述目标上传文件按照所述分片大小切割分片出并发数个文件分片以将所述并发数个文件分片同时发送至所述服务器。5.根据权利要求4所述的控制方法,其特征在于,所述根据预先设置的上传带宽占比确定所述并行上传模式的并发数的步骤,包括:根据预先设置的...

【专利技术属性】
技术研发人员:刘振明林清
申请(专利权)人:南京国盛华兴科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1