【技术实现步骤摘要】
一种基于切片上传的文件合并方法及系统
[0001]本专利技术涉及数据传输
,尤其涉及一种基于切片上传的文件合并方法及系统。
技术介绍
[0002]在高精地图领域中,一份点云数据可高达GB甚至是TB级别,使用C/S架构,从客户端到服务端传输过程,传统的上传文件方式可能遇到如文件上传超时、文件大小超限、上传耗时久、失败从头重传等问题,同时使用传统的表单提交文件或是HTML5都是将文件“整块”提交,服务端获取文件再进行转移和重命名。针对一个http请求,中断请求造成了服务端无法实时保存文件的已上传部分。在http协议下,无法保持浏览器与服务端的长连接,不能以文件流的形式来提交。
[0003]在这种背景下,产生了以切片上传外加秒传方案解决上述问题。即客户端将一个大文件分割成n份小文件,发送n次请求完成一个大文件的上传,待上传完成后,后台只需要将相同文件的切片还原成一个文件,但是上述还原切片方法带来切片是否来自于同一个文件、多个切片如何还原成一个文件、确保所有切片已上传、多台服务端服务器存其中m份切片如何合并等问题,并且,在传统文件读写环节,都以文件追加形式进行合并文件,导致合并时间过长。
技术实现思路
[0004]本专利技术公开了一种基于切片上传的文件合并方法及系统,提高文件切片上传后的文件合并的效率及准确度。
[0005]为了实现上述目的,第一方面,本专利技术公开了一种基于切片上传的文件合并方法,包括:
[0006]客户端利用预设的加密算法对待上传的第一文件进行加密,获得所述第 ...
【技术保护点】
【技术特征摘要】
1.一种基于切片上传的文件合并方法,其特征在于,包括:客户端利用预设的加密算法对待上传的第一文件进行加密,获得所述第一文件对应的加密值,并对所述第一文件进行文件切片,获得若干个第一文件块并生成所述若干个第一文件块中每一个第一文件块的文件信息;所述客户端将所述若干个第一文件块中的每一个第一文件块与对应的文件信息进行组装,获得若干个第二文件块,并将所述若干个第二文件块依次发送到服务端。2.如权利要求1所述的一种基于切片上传的文件合并方法,其特征在于,所述客户端利用预设的加密算法对待上传的第一文件进行加密,获得所述第一文件对应的加密值,并对所述第一文件进行文件切片,获得若干个第一文件块并生成所述若干个第一文件块中每一个第一文件块的文件信息,包括:所述客户端利用预设的MD5算法对所述第一文件进行MD5加密计算,获得所述第一文件对应的md5值;所述客户端对所述第一文件进行切片,获得若干个第一文件块并生成所述若干个第一文件块中每一个第一文件块对应的文件信息;所述文件信息包括文件属性及文件内容;所述文件属性包括文件块编号,总文件块个数,第一文件的文件名称及第一文件对应的md5值;所述文件内容为第一文件块对应的切片文件内容。3.一种基于切片上传的文件合并方法,其特征在于,包括:服务端持续接收客户端发送的每一个第二文件块,并根据所述第二文件块中的文件属性对所述第二文件块进行命名,生成所述第二文件块对应的文件名,并根据所述文件名构建所述第二文件块的文件内容的索引值,并将所述第二文件块的文件内容保存至预设的文件服务器;所述服务端获取所述客户端发送的若干个第二文件块的块数,并根据所述块数判断是否合并所述若干个第二文件块;若合并所述若干个第二文件块,所述服务端根据所述索引值,通过预设的文件偏移量循环计算所述若干个第二文件块中每一个第二文件块的文件位置,并从所述文件服务器获取对应的文件内容将其切写入所述文件位置,以使构建每一个第二文件块对应的异步文件块合并任务,进而获得所述若干个第二文件块对应的若干个异步文件块合并任务;所述服务端利用预设的线程池管理线程并发执行所述若干个异步文件合并任务,获得对应的第二文件,并对所述第二文件进行加密校验,并发送所述第二文件的校验结果到客户端。4.如权利要求3所述的一种基于切片上传的文件合并方法,其特征在于,所述服务端持续接收客户端发送的每一个第二文件块,并根据所述第二文件块中的文件属性对所述第二文件块进行命名,生成所述第二文件块对应的文件名,并根据所述文件名构建所述第二文件块的文件内容的索引值,并将所述第二文件块的文件内容保存至预设的文件服务器,包括:所述服务端获取每一个第二文件块的文件属性,并根据所述文件属性中的文件块编号及第一文件的文件名称对所述第二文件块进行重新命名,生成每一个第二文件块分别对应的文件名,并将每一个第二文件块的文件属性保存至预设的缓存服务器;所述服务端将每一个第二文件块的文件名作为索引值、文件内容作为索引数据,并将
每一个第二文件块的文件内容保存至预设的文件服务器。5.如权利要求3所述的一种基于切片上传的文件合并方法,其特征在于,所述服务端获取所述客户端发送的若干个第二文件块的块数,并根据所述块数判断是否合并所述若干个第二文件块,包括:所述服务端获取当前已接收的所述客户端发送的若干个第二文件块的块数,并根据所述第二文件块的文件属性获得总文件块数;所述服务端将所述若干个第二文件块的块数与所述总文件块数进行比较,判断所述第二文件块的块数是否与所述总文件块数相同;若相同,则所述服务端判定合并所述若干个第二文件块;若不相同,则所述服务端判定不合并所述若干个第二文件块。6.如权利要求3所述的一种基于切片上传的文件合并方法,其特征在于,所述服务端根据所述索引值,通过预设的文件偏移量循环计算所述若干个第二文件块中每一个第二文件块的文件位置,并从...
【专利技术属性】
技术研发人员:钟柱明,沈世华,
申请(专利权)人:国汽大有时空科技安庆有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。