一种文件上传系统技术方案

技术编号:22190470 阅读:31 留言:0更新日期:2019-09-25 04:54
本发明专利技术提供了一种文件上传系统,包括:前端浏览器,获取待上传的文件,获取文件的文件大小信息,将文件大小信息向后台服务器传输;后台服务器,当文件的文件大小信息超过预设文件大小阈值信息时,则向前端浏览器传输分片处理指令;前端浏览器,接收到分片处理指令后,对文件进行分片处理,将分片处理后获取的多个子文件向存储服务器传输;存储服务器,接收到子文件后,向前端浏览器传输子文件对应的关键字段;前端浏览器,根据文件对关键字段进行组装,形成关键字段组,向后台服务器传输;后台服务器,将关键字段组向存储服务器传输;存储服务器,根据关键字段组对多个子文件进行分配合并,形成文件进行存储。

A File Upload System

【技术实现步骤摘要】
一种文件上传系统
本专利技术涉及信息传输
,特别涉及一种文件上传系统。
技术介绍
在现代通信
中,信息的共享和文件的传输越来越普遍,所以对于文件的传输速度的要求也越来越高。目前对于文件的上传,基本都是通过前端浏览器获取文件,并将文件传输给后台服务器,后台服务器再将文件传输给存储服务器进行存储;上述技术方案中文件经过前端浏览器和后台服务器的两次传输,才能实现对文件的上传,两次文件的传输不仅会消耗大量的流量和带宽,尤其是当传输较大文件时,还会严重影响文件的上传速度;因此,急需一种文件上传系统。
技术实现思路
为解决上述技术问题,本专利技术提供一种文件上传系统,用以降低文件上传所需的流量,加快文件的上传速度。本专利技术实施例中提供了一种文件上传系统,所述系统包括:前端浏览器、后台服务器和存储服务器;其中,所述前端浏览器,用于获取待上传的文件,并获取所述文件的文件大小信息,并将所述文件大小信息向所述后台服务器传输;所述后台服务器,用于将所述文件大小信息与预设文件大小阈值信息进行比对,当所述文件的文件大小信息超过所述预设文件大小阈值信息时,则向所述前端浏览器传输分片处理指令;所述前端浏览器,用于接收到所述分片处理指令后,对所述文件进行分片处理,并将分片处理后获取的多个子文件向所述存储服务器传输;所述存储服务器,用于接收到所述前端浏览器传输的所述子文件后,向所述前端浏览器传输所述子文件对应的关键字段;所述前端浏览器,用于根据所述文件对所述关键字段进行组装,形成关键字段组,并向所述存储服务器传输;所述存储服务器,用于根据所述关键字段组对所述前端浏览器传输的多个所述子文件进行分配合并,形成所述文件进行存储。在一个实施例中,所述前端浏览器,还用于根据所获取的待上传的文件,获取所述文件的文件特征信息,并将所述文件特征信息向所述存储服务器传输;所述文件特征信息,包括所述文件的大小信息、文件类型信息以及文件sha256摘要信息。在一个实施例中,所述后台服务器,还用于当所述文件的文件大小信息不超过所述预设文件大小阈值信息时,向所述前端浏览器传输直接上传指令;所述前端浏览器接收到所述后台服务器传输的所述直接上传指令时,将所述文件向所述存储服务器传输进行存储。在一个实施例中,所述后台服务器,还用于将所述文件的文件大小信息向所述存储服务器传输;所述存储服务器,用于根据所述文件大小信息预留出相应大小的存储空间。在一个实施例中,所述前端浏览器,包括获取模块、分片模块和子文件生成模块;所述获取模块,用于获取所述文件的文件类型,并将所述文件和所述文件的文件类型向所述分片模块传输;所述分片模块,包括文本分片单元、图片分片单元、音频分片单元、视频分片单元;所述分片模块,用于接收到所述获取模块传输的所述文件的文件类型为文本类型时,将所述文件向所述文本分片单元传输进行分片处理,并将分片处理后的所述文件向所述子文件生成模块传输;所述分片模块,用于接收到所述获取模块传输的所述文件的文件类型为图片类型时,将所述文件向所述图片分片单元传输进行分片处理,并将分片处理后的所述文件向所述子文件生成模块传输;所述分片模块,用于接收到所述获取模块传输的所述文件的文件类型为音频类型时,将所述文件向所述音频分片单元传输进行分片处理,并将分片处理后的所述文件向所述子文件生成模块传输;所述分片模块,用于接收到所述获取模块传输的所述文件的文件类型为视频类型时,将所述文件向所述视频分片单元传输进行分片处理,并将分片处理后的所述文件向所述子文件生成模块传输;所述子文件生成模块,用于根据所述分片模块传输的分片处理后的所述文件生成子文件。在一个实施例中,所述文本分片单元,用于根据所述预设文件大小阈值信息对所述文件按照文件大小进行分片处理;所述图片分片单元,用于获取所述文件中的图片节点,并根据所述图片节点对所述文件进行分片处理;所述音频分片单元,用于获取所述文件中的音频频率信息,并根据所述音频频率信息对所述文件进行分片处理;所述视频分片单元,用于获取所述文件中的视频时长信息,并根据预设视频时长间隔对所述文件进行分片处理。在一个实施例中,所述前端浏览器向所述存储服务器传输所述子文件的具体步骤包括:所述前端浏览器向所述存储服务器传输文件传输指令;所述存储服务器,接收到所述前端浏览器传输的所述文件传输指令时,将所述存储服务器的ID信息向所述前端浏览器传输;所述前端浏览器,用于根据所述存储服务器的ID信息从所述前端浏览器的存储器中查找与所述存储服务器的ID信息相对应的加密算法;所述前端浏览器,还用于根据所述加密算法对所述子文件进行加密处理,并将加密处理后的子文件向所述存储服务器传输;所述存储服务器,根据预设的解密算法对所述前端浏览器传输的所述加密处理后的子文件进行解密处理,获取所述子文件;所述前端浏览器的存储器内存储有所述存储服务器的ID信息和所述存储服务器的ID信息对应的所述加密算法。在一个实施例中,所述存储服务器,还包括文件读取模块、文件名生成模块、文件存储模块;所述文件读取模块,用于获取所述文件的文件类型、存储时间和文件大小,并向所述文件名生成模块传输;所述文件名生成模块,用于根据所述文件的文件类型、存储时间和文件大小生成文件名,并向所述文件存储模块传输;所述文件存储模块,用于创建文件夹,并将所述文件名作为所述文件夹的文件名称,将所述文件存储于所述文件夹内。在一个实施例中,所述前端浏览器向所述存储服务器传输所述子文件时,对所述子文件的冗余信息进行剔除处理,处理具体步骤具体为:步骤S1、将所述文件转变为机器所能识别的二进制机器码;步骤S2、将所述二进制机器码按每个字节进行切割,每一个字节形成一条数据,则共有P条数据,每条数据含有8位数值,则形成P行8列的矩阵B;S3、对所述矩阵B进行列的优化,其具体步骤如下所述;S301、构建运算矩阵Y,所述矩阵Y的初始值为矩阵B,同时构建标识向量M,所述M的初始值为空;S302、利用公式(1)判断所述矩阵Y的第一列是否需要剔除;CF=sum(Y1)ifCF=PthenK=1,T=[1,0]elseifCF=0thenK=1,T=[0,0]elseifY1≠Y2thenK=1,T=[0,1]elseK=0,T=[0,0]M=[M,T](1)其中,CF,T为中间参数,sum为求和,Y1为矩阵Y的第一列的值,if…then…为判断if和then之间的条件是否满足,如果满足条件则运行then后面的计算,如果不满足,则运行下一行的else后面的运行,Y1≠Y2为矩阵Y的所有行的第一列的值都不等于第二列的值,[M,T]为将T的值,添加到向量M的后面,K为判断函数,若K=0,则进行步骤S4,若K等于1则,将矩阵Y的第一列的值删除,然后将删除第1列后的矩阵Y重复步骤S302;S4、对已经剔除了所有需要剔除的重复列后的矩阵Y进行第二次信息剔除,其中具体步骤如下所述;S401、构建信息矩阵Q,首先将矩阵Y的第一行的值,作为矩阵Q的第一条数据,矩阵Y的第二行的值,赋值给待检测向量J,同时构建位置向量Z,Z的第一个值为1,同时剔除矩阵Y的前两行;S402、利用公式(2)调整信息矩阵Q,和位置向量I;GL=[CL1,CL2,……CLlength(Q)]maxz=max(本文档来自技高网...

【技术保护点】
1.一种文件上传系统,其特征在于,所述系统包括:前端浏览器、后台服务器和存储服务器;其中,所述前端浏览器,用于获取待上传的文件,并获取所述文件的文件大小信息,并将所述文件大小信息向所述后台服务器传输;所述后台服务器,用于将所述文件大小信息与预设文件大小阈值信息进行比对,当所述文件的文件大小信息超过所述预设文件大小阈值信息时,则向所述前端浏览器传输分片处理指令;所述前端浏览器,用于接收到所述分片处理指令后,对所述文件进行分片处理,并将分片处理后获取的多个子文件向所述存储服务器传输;所述存储服务器,用于接收到所述前端浏览器传输的所述子文件后,向所述前端浏览器传输所述子文件对应的关键字段;所述前端浏览器,用于根据所述文件对所述关键字段进行组装,形成关键字段组,并向所述存储服务器传输;所述存储服务器,用于根据所述关键字段组对所述前端浏览器传输的多个所述子文件进行分配合并,形成所述文件进行存储。

【技术特征摘要】
1.一种文件上传系统,其特征在于,所述系统包括:前端浏览器、后台服务器和存储服务器;其中,所述前端浏览器,用于获取待上传的文件,并获取所述文件的文件大小信息,并将所述文件大小信息向所述后台服务器传输;所述后台服务器,用于将所述文件大小信息与预设文件大小阈值信息进行比对,当所述文件的文件大小信息超过所述预设文件大小阈值信息时,则向所述前端浏览器传输分片处理指令;所述前端浏览器,用于接收到所述分片处理指令后,对所述文件进行分片处理,并将分片处理后获取的多个子文件向所述存储服务器传输;所述存储服务器,用于接收到所述前端浏览器传输的所述子文件后,向所述前端浏览器传输所述子文件对应的关键字段;所述前端浏览器,用于根据所述文件对所述关键字段进行组装,形成关键字段组,并向所述存储服务器传输;所述存储服务器,用于根据所述关键字段组对所述前端浏览器传输的多个所述子文件进行分配合并,形成所述文件进行存储。2.如权利要求1所述的系统,其特征在于,所述前端浏览器,还用于根据所获取的待上传的文件,获取所述文件的文件特征信息,并将所述文件特征信息向所述存储服务器传输;所述文件特征信息,包括所述文件的大小信息、文件类型信息以及文件sha256摘要信息。3.如权利要求1所述的系统,其特征在于,所述后台服务器,还用于当所述文件的文件大小信息不超过所述预设文件大小阈值信息时,向所述前端浏览器传输直接上传指令;所述前端浏览器接收到所述后台服务器传输的所述直接上传指令时,将所述文件向所述存储服务器传输进行存储。4.如权利要求1所述的系统,其特征在于,所述后台服务器,还用于将所述文件的文件大小信息向所述存储服务器传输;所述存储服务器,用于根据所述文件大小信息预留出相应大小的存储空间。5.如权利要求1所述的系统,其特征在于,所述前端浏览器,包括获取模块、分片模块和子文件生成模块;所述获取模块,用于获取所述文件的文件类型,并将所述文件和所述文件的文件类型向所述分片模块传输;所述分片模块,包括文本分片单元、图片分片单元、音频分片单元、视频分片单元;所述分片模块,用于接收到所述获取模块传输的所述文件的文件类型为文本类型时,将所述文件向所述文本分片单元传输进行分片处理,并将分片处理后的所述文件向所述子文件生成模块传输;所述分片模块,用于接收到所述获取模块传输的所述文件的文件类型为图片类型时,将所述文件向所述图片分片单元传输进行分片处理,并将分片处理后的所述文件向所述子文件生成模块传输;所述分片模块,用于接收到所述获取模块传输的所述文件的文件类型为音频类型时,将所述文件向所述音频分片单元传输进行分片处理,并将分片处理后的所述文件向所述子文件生成模块传输;所述分片模块,用于接收到所述获取模块传输的所述文件的文件类型为视频类型时,将所述文件向所述视频分片单元传输进行分片处理,并将分片处理后的所述文件向所述子文件生成模块传输;所述子文件生成模块,用于根据所述分片模块传输的分片处理后的所述文件生成子文件。6.如权利要求5所述的系统,其特征在于,所述文本分片单元,用于根据所述预设文件大小阈值信息对所述文件按照文件大小进行分片处理;所述图片分片单元,用于获取所述文件中的图片节点,并根据所述图片节点对所述文件进行分片处理;所述音频分片单元,用于获取所述文件中的音频频率信息,并根据所述音频频率信息对所述文件进行分片处理;所述视频分片单元,用于获取所述文件中的视频时长信息,并根据预设视频时长间隔对所述文件进行分片处理。7.如权利要求1所述的系统,其特征在于,所述前端浏览器向所述存储服务器传输所述子文件的具体步骤包括:所述前端浏览器向所述存储服务器传输文件传输指令;所述存储服务器,接收到所述前端浏览器传输的所述文件传输指令时,将所述存储服务器的ID信息向所述前端浏览器传输;所述前端浏览器,用于根据所述存储服务器的ID信息从所述前端浏览器的存储器中查找与所述存储服务器的ID信息相对应的加...

【专利技术属性】
技术研发人员:李丰
申请(专利权)人:南京科源信息技术有限公司
类型:发明
国别省市:江苏,32

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

1