分布式文件系统下的多文件批量打包方法、存储介质技术方案

技术编号:21205319 阅读:41 留言:0更新日期:2019-05-25 02:53
本发明专利技术提供分布式文件系统下的文件打包方法、存储介质,方法包括:客户端接收对应两个以上目标文件的打包请求后,生成对应的打包描述文件;客户端发送所述打包描述文件至打包服务端;打包服务端依据所述打包描述文件中的源文件路径向分布式文件系统获取所述两个以上目标文件;打包服务端打包所述两个以上目标文件,生成对应的压缩包;打包服务端上传所述压缩包至分布式文件系统,并回传所述压缩包对应分布式文件系统的下载地址至客户端。本发明专利技术将多文件的下载业务从客户端业务服务上剥离出来,交由独立的打包服务端实现,同时提高打包下载效率和打包可靠性。

Batch Packing Method and Storage Medium for Multi-Files in Distributed File System

The invention provides a file packing method and a storage medium under a distributed file system. The method includes: the client receives a packing request for two or more target files and generates a corresponding packaging description file; the client sends the packaging description file to the packaging service side; and the packaging service side obtains the distributed file system according to the source file path in the packaging description file. The package server packs the two or more target files and generates the corresponding compressed package. The package server uploads the compressed package to the distributed file system and returns the download address of the compressed package to the client. The invention separates the multi-file downloading service from the client business service and submits it to an independent packaging service terminal for implementation, while improving the packaging downloading efficiency and packaging reliability.

【技术实现步骤摘要】
分布式文件系统下的多文件批量打包方法、存储介质
本专利技术涉及web服务打包领域,具体涉及分布式文件系统下的多文件批量打包方法、存储介质。
技术介绍
随着互联网的发展,需要存储的文件量越来越大。目前大多企业的选择是将文件存储在分布式文件系统进行文件的读写,不少场景中用户需要对选中的文件进行批量打包下载。现有技术的打包方式需要通过客户端自身的业务服务实现。具体的,在处理打包请求的时候,需要由其业务服务自身完成相关文件的下载、压缩、存储。这种方式的缺点是用户进行打包下载时和自身业务服务代码逻辑混合。具体体现在:大量的打包请求会造成客户端大量磁盘IO,从而导致客户端服务性能的下降,并且长时间的打包操作也可能导致请求的超时。因此,有必要提供一种有效针对多文件批量打包下载的服务,在不影响业务系统运行的同时为用户提供可靠的打包下载服务。
技术实现思路
本专利技术所要解决的技术问题是:提供分布式文件系统下的多文件批量打包方法、存储介质,通过采用独立打包服务将打包过程与客户端自身业务逻辑解耦,以提升文件打包的可靠性和打包效率,且不对客户端服务性能造成影响。为了解决上述技术问题,本专利技术采用的技术方案为:分布式文件系统下的文件打包方法,包括:客户端接收对应两个以上目标文件的打包请求后,生成对应的打包描述文件;客户端发送所述打包描述文件至打包服务端;打包服务端依据所述打包描述文件中的源文件路径向分布式文件系统获取所述两个以上目标文件;打包服务端打包所述两个以上目标文件,生成对应的压缩包;打包服务端上传所述压缩包至分布式文件系统,并回传所述压缩包对应分布式文件系统的下载地址至客户端。本专利技术提供的另一个技术方案为:一种计算机可读存储介质,其上存储有计算机程序,所述程序在被处理器执行时,能实现上述分布式文件系统下的文件打包方法所包含的步骤。本专利技术的有益效果在于:本申请提供一种全新的多文件打包下载交互模式,将多文件的下载业务从客户端业务服务上剥离出来,交由独立的打包服务端实现,能有效减少客户端业务服务的自身文件IO操作,不对其业务服务性能产生影响,更好的专注自身业务逻辑处理;同时又能提高文件打包效率和打包可靠性。附图说明图1为本专利技术实施例分布式文件系统下的文件打包方法的流程示意图;图2为本专利技术实施例一的分布式文件系统下的文件打包方法的流程示意图。具体实施方式为详细说明本专利技术的
技术实现思路
、所实现目的及效果,以下结合实施方式并配合附图予以说明。本专利技术最关键的构思在于:将多文件的下载业务从客户端业务服务上剥离出来,交由独立的打包服务端实现,同时提高打包下载效率和打包可靠性。请参照图1,本专利技术提供一种分布式文件系统下的文件打包方法,包括:客户端接收对应两个以上目标文件的打包请求后,生成对应的打包描述文件;客户端发送所述打包描述文件至打包服务端;打包服务端依据所述打包描述文件中的源文件路径向分布式文件系统获取所述两个以上目标文件;打包服务端打包所述两个以上目标文件,生成对应的压缩包;打包服务端上传所述压缩包至分布式文件系统,并回传所述压缩包对应分布式文件系统的下载地址至客户端。从上述描述可知,本专利技术的有益效果在于:提供一种全新的资源打包交互方式,通过设置独立打包服务,依据特定规则的打包描述文件进行交互,提供稳定可靠且高效的打包服务,且不对客户端的业务服务性能产生影响。进一步的,所述打包描述文件包括各个目标文件对应的源文件路径和各个目标文件对应的目标文件路径;所述打包服务端打包所述两个以上目标文件,生成对应的压缩包,具体为:打包服务端依据所述目标文件路径将所获取的各个目标文件存储至一临时目录;打包服务端打包所述一临时目录,生成对应的压缩包。由上述描述可知,打包服务端将获取的目标文件统一存至临时目录,并对目录中的各个目标文件进行归类后再打包压缩,不仅方便对目标文件进行管理和操作;而且能使用户直接获取到对应请求中目标文件路径要求而有序性排列的所有目标文件。进一步的,所述回传所述压缩包对应分布式文件系统的下载地址至客户端,具体为:打包服务端生成所述压缩包对应的校验值;打包服务端回传包括所述校验值、所述压缩包对应分布式文件系统的下载地址以及所述压缩包的大小的打包信息至客户端。由上述描述可知,打包服务端还将对应压缩包生成校验值,为客户端下载文件后验证其完整性提供支持,更好的保证客户端能准确获取完整的目标文件。进一步的,所述客户端发送所述打包描述文件至打包服务端;之后,还包括:打包服务端依据所述打包描述文件生成一打包任务后,将其存储至数据库;打包服务端生成与所述一打包任务对应的唯一标识符,并将所述唯一标识符返回给客户端;客户端依据所述唯一标识符定时轮询打包服务端所述一打包任务的打包结果。由上述描述可知,打包服务端将对应接收到的各个打包描述文件分别生成唯一标识符并返回给对应的客户端,方便客户端以唯一标识符为令牌定时向打包服务端寻求对应打包任务的打包结果,而无需时刻在线等待结果,造成资源浪费,甚至导致请求超时。进一步的,所述打包服务端依据所述打包描述文件中的源文件路径向分布式文件系统获取所述两个以上目标文件,具体为:当打包服务端依据预设周期轮询数据库是否存在可执行的打包任务时,获取所述一打包任务;打包服务端解析所述一打包任务,获取各个目标文件对应的源文件路径;打包服务端依据所述源文件路径构建目标文件列表;打包服务端向分布式文件系统请求批量下载所述目标文件列表对应的所有目标文件;打包服务端从分布式文件系统获取所述两个以上目标文件。由上述描述可知,打包服务端将以生成打包任务的形式有序性地处理接收到的各个打包描述文件,确保高效执行打包请求。进一步的,打包服务器通过后台启动的线程来顺序执行所述向分布式文件系统请求批量下载所述目标文件列表对应的所有目标文件的步骤,以及获取所述两个以上目标文件的步骤。由上述描述可知,对应不同打包任务,可以通过在后台分别开启互不影响的不同线程执行,实现同时支持多个打包任务的执行,提高打包服务端的性能。进一步的,在执行所述打包服务端依据所述打包描述文件中的源文件路径向分布式文件系统获取所述两个以上目标文件步骤的过程中,若其一源文件路径对应一文件夹,则递归下载所述一文件下的所有子文件。由上述描述可知,能实现依据打包描述文件中记载的对应文件夹的源文件路径,自动完成其所有子文件的下载,更具实用性;同时用户操作更便捷、高效。本专利技术提供的另一个技术方案为:一种计算机可读存储介质,其上存储有计算机程序,所述程序在被处理器执行时,能实现上述分布式文件系统下的文件打包方法所包含的步骤。从上述描述可知,本专利技术的有益效果在于:对应本领域普通技术人员可以理解实现上述技术方案中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来实现的,所述的程序可存储于一计算机可读取的存储介质中,该程序在执行时,可包括如上述各方法的流程,并通过程序的执行实现以一种全新的多文件打包下载交互模式,将多文件的下载业务从客户端业务服务上剥离出来,交由独立的打包服务端实现,能有效减少客户端业务服务的自身文件IO操作,不对其业务服务性能产生影响,更好的专注自身业务逻辑处理;同时又能提高文件打包效率和打包可靠性。实施例一请参照图2,本实施例提供分布式文件系统下的文件打包方法,包括:S1:客本文档来自技高网
...

【技术保护点】
1.分布式文件系统下的多文件批量打包方法,其特征在于,包括:客户端接收对应两个以上目标文件的打包请求后,生成对应的打包描述文件;客户端发送所述打包描述文件至打包服务端;打包服务端依据所述打包描述文件中的源文件路径向分布式文件系统获取所述两个以上目标文件;打包服务端打包所述两个以上目标文件,生成对应的压缩包;打包服务端上传所述压缩包至分布式文件系统,并回传所述压缩包对应分布式文件系统的下载地址至客户端。

【技术特征摘要】
1.分布式文件系统下的多文件批量打包方法,其特征在于,包括:客户端接收对应两个以上目标文件的打包请求后,生成对应的打包描述文件;客户端发送所述打包描述文件至打包服务端;打包服务端依据所述打包描述文件中的源文件路径向分布式文件系统获取所述两个以上目标文件;打包服务端打包所述两个以上目标文件,生成对应的压缩包;打包服务端上传所述压缩包至分布式文件系统,并回传所述压缩包对应分布式文件系统的下载地址至客户端。2.如权利要求1所述的分布式文件系统下的多文件批量打包方法,其特征在于,所述打包描述文件包括各个目标文件对应的源文件路径和各个目标文件对应的目标文件路径;所述打包服务端打包所述两个以上目标文件,生成对应的压缩包,具体为:打包服务端依据所述目标文件路径将所获取的各个目标文件存储至一临时目录;打包服务端打包所述一临时目录,生成对应的压缩包。3.如权利要求1所述的分布式文件系统下的多文件批量打包方法,其特征在于,所述回传所述压缩包对应分布式文件系统的下载地址至客户端,具体为:打包服务端生成所述压缩包对应的校验值;打包服务端回传包括所述校验值、所述压缩包对应分布式文件系统的下载地址以及所述压缩包的大小的打包信息至客户端。4.如权利要求1所述的分布式文件系统下的多文件批量打包方法,其特征在于,所述客户端发送所述打包描述文件至打包服务端;之后,还包括:打包服务端依据所述打包描述文件生成一打包任务后,将其存储至数据库;打包服务端生成与所述一打包...

【专利技术属性】
技术研发人员:刘德建张志毅郭玉湖
申请(专利权)人:福建天泉教育科技有限公司
类型:发明
国别省市:福建,35

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

1