CN114205347B - 基于ftp协议的文件下载方法、装置、设备及存储介质 - Google Patents
基于ftp协议的文件下载方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN114205347B CN114205347B CN202111521755.2A CN202111521755A CN114205347B CN 114205347 B CN114205347 B CN 114205347B CN 202111521755 A CN202111521755 A CN 202111521755A CN 114205347 B CN114205347 B CN 114205347B
- Authority
- CN
- China
- Prior art keywords
- downloading
- file
- information
- task
- download
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 230000002159 abnormal effect Effects 0.000 claims abstract description 36
- 230000005856 abnormality Effects 0.000 claims abstract description 20
- 238000012544 monitoring process Methods 0.000 claims description 24
- 238000004590 computer program Methods 0.000 claims description 11
- 230000003068 static effect Effects 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
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]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请涉及文件下载领域,揭示了一种基于FTP协议的文件下载方法、装置、计算机设备及存储介质,其中方法包括:获取基于FTP协议的文件下载任务;识别所述文件下载任务,确定所述文件下载任务的存储目录;对所述存储目录进行递归扫描,获取所述文件下载任务包含的若干个文件的下载信息,并将所述下载信息存储至下载缓存中;若所述文件下载任务发生异常,从所述下载缓存中获取导致异常的第一文件的第一下载信息;解析所述第一下载信息,根据所述第一下载信息确定所述第一文件的下载进度信息;根据所述下载进度信息重新配置第一文件的文件下载任务,以根据所述下载进度信息继续下载所述第一文件。本申请能够提高文件下载任务中各个文件的下载成功率。
Description
技术领域
本申请涉及到数据存储领域,特别是涉及到一种基于FTP协议的文件下载方法、装置、计算机设备及存储介质。
背景技术
当前下载文件时,会遇到网络波动以及网络不稳定的现象,以及遇到客户端与服务器无法保持连接的现象,当遇到上述现象时,往往文件只是下载到一半便停止,导致无法正常地完成文件的下载,需要花费更多的时间去重新执行下载任务,文件下载的效率低,成功率低。
发明内容
本申请的主要目的为提供一种基于FTP协议的文件下载方法、装置、计算机设备及存储介质,旨在解决文件下载的效率低,成功率低的问题。
为了实现上述发明目的,本申请提出一种基于FTP协议的文件下载方法,包括:
获取基于FTP协议的文件下载任务;
识别所述文件下载任务,确定所述文件下载任务的存储目录;
对所述存储目录进行递归扫描,获取所述文件下载任务包含的若干个文件的下载信息,并将所述下载信息存储至下载缓存中;
监控所述文件下载任务,若所述文件下载任务发生异常,从所述下载缓存中获取导致异常的第一文件的第一下载信息;
解析所述第一下载信息,根据所述第一下载信息确定所述第一文件的下载进度信息;
根据所述下载进度信息重新配置所述第一文件的文件下载任务,以根据所述下载进度信息继续下载所述第一文件。
进一步地,所述解析所述第一下载信息,根据所述第一下载信息确定所述第一文件的下载进度信息,包括:
解析所述第一下载信息,获取所述第一下载信息中所述第一文件的总数据量以及当前下载数据量;
根据所述当前下载数据量与所述总数据量确定所述第一文件的下载比例值;
根据所述下载比例值确定所述第一文件的下载进度信息。
所述解析所述第一下载信息,获取所述第一下载信息中所述第一文件的总数据量以及当前下载数据量,包括:
解析所述第一下载信息,获取所述第一下载信息中包含的第一文件的文件名、下载路径及总数据量;
根据所述文件名从所述下载路径中获取所述第一文件的当前下载数据量。
进一步地,所述监控所述文件下载任务,若所述文件下载任务发生异常,从所述下载缓存中获取导致异常的第一文件的第一下载信息,包括:
监控所述文件下载任务,获取所述文件下载任务中第一文件的单位时间下载数据量;
若所述单位时间下载数据量低于预设值,且所述单位时间下载数据量低于预设值的持续时间超过预设时长,确定所述文件下载任务发生异常,并从所述下载缓存中获取所述第一文件的第一下载信息。
进一步地,所述根据所述下载进度信息重新配置所述第一文件的文件下载任务,以根据所述下载进度信息继续下载所述第一文件,包括:
根据预设的时间间隔向所述第一文件的下载地址发送连接请求,以重新建立所述第一文件下载的网络连接,并根据所述下载进度信息从所述下载地址中继续下载所述第一文件。
进一步的,所述根据所述下载进度信息重新配置所述第一文件的文件下载任务,以根据所述下载进度信息继续下载所述第一文件之后,还包括:
判断所述第一文件是否完成下载;
当所述第一文件完成下载后,删除所述下载缓存中所述第一文件对应的第一文件缓存。
进一步地,所述判断所述第一文件完成下载的步骤,包括:
获取所述第一文件的总数据量以及完成下载数据量;
若所述第一文件的总数据量与所述完成下载数据量相同,计算已下载的所述第一文件的预设校验值;
获取所述第一文件的标准校验值;
若所述预设校验值与所述标准校验值相同,确定所述第一文件完成下载。
本申请还提供一种基于FTP协议的文件下载装置,包括:
任务获取模块,用于获取基于FTP协议的文件下载任务;
任务解析模块,用于识别所述文件下载任务,确定所述文件下载任务的存储目录;
递归扫描模块,用于对所述存储目录进行递归扫描,获取所述文件下载任务包含的若干个文件的下载信息,并将所述下载信息存储至下载缓存中;
任务监控模块,用于监控所述文件下载任务,若所述文件下载任务发生异常,从所述下载缓存中获取导致异常的第一文件的第一下载信息;
进度解析模块,用于解析所述第一下载信息,根据所述第一下载信息确定所述第一文件的下载进度信息;
任务配置模块,用于根据所述下载进度信息重新配置所述第一文件的文件下载任务,以根据所述下载进度信息继续下载所述第一文件。
本申请还提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述基于FTP协议的文件下载方法的步骤。
本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述基于FTP协议的文件下载方法的步骤。
本申请例提供了一种基于FTP协议的文件下载方法,对文件下载的过程进行监控、控制,完成文件的自动化、快速、完整下载,首先获取基于FTP协议的文件下载任务,然后识别所述文件下载任务,确定所述文件下载任务的存储目录,从所述文件下载任务中确定所述文件下载任务的存储目录,即文件下载的目录,然后对所述存储目录进行递归扫描,获取所述文件下载任务包含的若干个文件的下载信息,并将所述下载信息存储至下载缓存中;监控所述文件下载任务,若所述文件下载任务发生异常,从所述下载缓存中获取导致异常的第一文件的第一下载信息;然后解析所述第一下载信息,根据所述第一下载信息确定所述第一文件的下载进度信息,根据所述下载进度信息重新配置所述第一文件的文件下载任务,即重新配置第一文件的下载任务,从所述下载进度信息对应的进度对所述文件下载任务进行重新配置,根据所述下载进度信息继续下载所述第一文件,使得文件下载任务中的第一文件能够重新下载,提高文件下载任务中各个文件的下载成功率。
附图说明
图1为本申请基于FTP协议的文件下载方法的一实施例流程示意图;
图2为本申请基于FTP协议的文件下载装置的一实施例结构示意图;
图3为本申请计算机设备的一实施例结构示意框图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
参照图1,本申请实施例提供一种基于FTP协议的文件下载方法,包括步骤S10-S60,对于所述基于FTP协议的文件下载方法的各个步骤的详细阐述如下。
S10、获取基于FTP协议的文件下载任务。
本实施例应用于文件的下载场景中,尤其是基于FTP协议(File TransferProtocol,文件传输协议)的文件下载场景中,本发明开发一基于FTP协议的下载工具,基于所述下载工具对文件下载的过程进行监控、控制,完成文件的自动化、快速、完整下载。首先,获取基于FTP协议的文件下载任务,即通过接收文件下载请求,然后链接至所述文件下载请求对应的资源服务器,再基于FTP协议从所述资源服务器请求下载对应的文件,建立基于FTP协议的文件下载任务,从而获取基于FTP协议的文件下载任务。
S20、识别所述文件下载任务,确定所述文件下载任务的存储目录。
本实施例中,在获取基于FTP协议的文件下载任务之后,所述文件下载任务以特定格式存储了相关信息,通过识别所述文件下载任务,确定所述文件下载任务的存储目录,在一种实施方式中,所述文件下载任务为基于FTP协议的格式的文件下载任务,通过FTP协议的格式特征识别所述基于FTP协议的格式的文件下载任务,从所述文件下载任务中确定所述文件下载任务的存储目录,即文件下载的存储地址。
S30、对所述存储目录进行递归扫描,获取所述文件下载任务包含的若干个文件的下载信息,并将所述下载信息存储至下载缓存中。
本实施例中,在识别所述文件下载任务,确定所述文件下载任务的存储目录之后,对所述存储目录进行递归扫描,即持续地对所述存储目录进行扫描,扫描所述存储目录中的文件,从而获取所述文件下载任务包含的若干个文件的下载信息,通过递归扫描所述存储目录,确定文件下载任务中正在下载的若干个文件,以及每个下载的文件的下载信息,所述下载信息包含文件的名称、大小、格式等信息,再将所述下载信息存储至下载缓存中,即在文件下载至所述存储目录的同时,还将所述文件的下载信息同步至下载缓存,建立文件的临时文件。
S40、监控所述文件下载任务,若所述文件下载任务发生异常,从所述下载缓存中获取导致异常的第一文件的第一下载信息。
本实施例中,在对所述存储目录进行递归扫描的过程中,还持续监控所述文件下载任务,监控所述文件下载任务是否发生异常,包括是否出现连接异常、是否中断下载,是否下载停滞,若所述文件下载任务发生异常,从所述下载缓存中获取导致异常的第一文件的第一下载信息,所述第一文件为文件下载任务发生异常对应的文件,所述第一文件的第一下载信息为下载缓存中该第一文件保存的下载信息。在一种实施方式中,一个文件下载任务包含多个待下载的文件,当所述文件下载任务发生异常并确定了发生异常的文件时,确定该文件为第一文件,然后从所述下载缓存中获取第一文件的第一下载信息,即获取发生下载异常的文件的下载信息,从而准确地定位下载发生异常的文件,以对该文件重新执行下载任务,而不需要对文件下载任务中的所有文件重新执行下载任务,提高文件下载任务的执行效率。
S50、解析所述第一下载信息,根据所述第一下载信息确定所述第一文件的下载进度信息。
本实施例中,在从所述下载缓存中获取第一文件的第一下载信息之后,解析所述第一下载信息,根据所述第一下载信息确定所述第一文件的下载进度信息,即确定所述第一文件下载的进度,以方便对第一文件执行继续下载。
S60、根据所述下载进度信息重新配置所述第一文件的文件下载任务,以根据所述下载进度信息继续下载所述第一文件。
本实施例中,在确定所述第一文件的下载进度信息之后,根据所述下载进度信息重新配置所述第一文件的文件下载任务,即重新配置第一文件的下载任务,从所述下载进度信息对应的进度对所述文件下载任务进行重新配置,根据所述下载进度信息继续下载所述第一文件,使得文件下载任务中的第一文件能够重新下载,提高文件下载任务中各个文件的下载成功率。
本实施例提供一种基于FTP协议的文件下载方法,对文件下载的过程进行监控、控制,完成文件的自动化、快速、完整下载,首先获取基于FTP协议的文件下载任务,然后识别所述文件下载任务,确定所述文件下载任务的存储目录,从所述文件下载任务中确定所述文件下载任务的存储目录,即文件下载的目录,然后对所述存储目录进行递归扫描,获取所述文件下载任务包含的若干个文件的下载信息,并将所述下载信息存储至下载缓存中;监控所述文件下载任务,若所述文件下载任务发生异常,从所述下载缓存中获取导致异常的第一文件的第一下载信息;然后解析所述第一下载信息,根据所述第一下载信息确定所述第一文件的下载进度信息,根据所述下载进度信息重新配置所述第一文件的文件下载任务,即重新配置第一文件的下载任务,从所述下载进度信息对应的进度对所述文件下载任务进行重新配置,根据所述下载进度信息继续下载所述第一文件,使得文件下载任务中的第一文件能够重新下载,提高文件下载任务中各个文件的下载成功率。
在一个实施例中,所述解析所述第一下载信息,根据所述第一下载信息确定所述第一文件的下载进度信息,包括:
解析所述第一下载信息,获取所述第一下载信息中所述第一文件的总数据量以及当前下载数据量;
根据所述当前下载数据量与所述总数据量确定所述第一文件的下载比例值;
根据所述下载比例值确定所述第一文件的下载进度信息。
本实施例中,在解析所述第一下载信息,根据所述第一下载信息确定所述第一文件的下载进度信息的过程中,解析所述第一下载信息,获取所述第一文件的总数据量以及获取所述第一文件的当前下载数据量,即根据所述第一下载信息确定第一文件的数据总大小,以及所述第一文件当前下载的数据大小,然后根据所述当前下载数据量与所述总数据量确定所述第一文件的下载比例值,根据所述下载比例值确定所述第一文件的下载进度信息,从而准确地确定文件下载任务发生异常时的第一文件的下载进度,以准确地对第一文件重新执行下载任务,提高文件下载任务中各个文件的下载成功率。
在一个实施例中,所述解析所述第一下载信息,获取所述第一下载信息中所述第一文件的总数据量以及当前下载数据量,包括:
解析所述第一下载信息,获取所述第一下载信息中包含的第一文件的文件名、下载路径及总数据量;
根据所述文件名从所述下载路径中获取所述第一文件的当前下载数据量。
本实施例中,由于文件下载是动态变化的过程,在所述第一下载信息中仅保存静态不变的数据,以减少数据的计算,因此在解析所述第一下载信息,获取所述第一下载信息中所述第一文件的总数据量以及当前下载数据量的过程中,解析所述第一下载信息,获取所述第一下载信息中包含的第一文件的文件名、下载路径及总数据量,该几项数据均为静态数据,不随着第一文件的下载进度而变化,然后根据所述文件名从所述下载路径中获取所述第一文件的当前下载数据量,即从所述下载路径中获取当前所述第一文件的已经下载的数据量,完成动态数据的获取,从而将动态数据与静态数据进行分开,减少数据的计算,降低运算的复杂度。
在一个实施例中,所述监控所述文件下载任务,若所述文件下载任务发生异常,从所述下载缓存中获取导致异常的第一文件的第一下载信息,包括:
监控所述文件下载任务,获取所述文件下载任务中第一文件的单位时间下载数据量;
若所述单位时间下载数据量低于预设值,且所述单位时间下载数据量低于预设值的持续时间超过预设时长,确定所述文件下载任务发生异常,并从所述下载缓存中获取所述第一文件的第一下载信息。
本实施例中,在监控所述文件下载任务,确定所述文件下载任务发生异常的过程中,监控所述文件下载任务,获取所述文件下载任务中第一文件的单位时间下载数据量,即获取文件下载任务中各个文件的单位时间下载数据量,将所述文件下载任务中文件定义为第一文件,通过所述单位时间下载数据量判断文件下载任务是否出现异常,若所述单位时间下载数据量低于预设值,且所述单位时间下载数据量低于预设值的持续时间超过预设时长,确定所述文件下载任务中的第一文件的下载出现异常,此时确定所述文件下载任务发生异常,并从所述下载缓存中获取所述第一文件的第一下载信息,从而快速地定位出现异常的第一文件,亦确定文件下载任务出现异常,提高文件下载异常时的修复效率。
在一个实施例中,所述根据所述下载进度信息重新配置所述第一文件的文件下载任务,以根据所述下载进度信息继续下载所述第一文件,包括:
根据预设的时间间隔向所述第一文件的下载地址发送连接请求,以重新建立所述第一文件下载的网络连接,并根据所述下载进度信息从所述下载地址中继续下载所述第一文件。
本实施例中,在根据所述下载进度信息重新配置所述第一文件的文件下载任务,以根据所述下载进度信息继续下载所述第一文件的过程中,设置异常重连的次数与间隔,即根据预设的时间间隔向所述第一文件的下载地址发送连接请求,以重新建立所述第一文件下载的网络连接,避免频繁地向下载地址发送连接请求而导致资源的浪费,并根据所述下载进度信息从所述下载地址中继续下载所述第一文件,完成第一文件的继续下载。
在一个实施例中,所述根据所述下载进度信息重新配置所述第一文件的文件下载任务,以根据所述下载进度信息继续下载所述第一文件之后,还包括:
判断所述第一文件是否完成下载;
当所述第一文件完成下载后,删除所述下载缓存中所述第一文件对应的第一文件缓存。
本实施例中,在根据所述下载进度信息重新配置所述第一文件的文件下载任务,以根据所述下载进度信息继续下载所述第一文件之后,判断所述第一文件是否完成下载,具体的,可以通过文件的大小、格式、内容判断所述第一文件是否完成下载,当确定第一文件完成下载后,删除所述下载缓存中所述第一文件对应的第一文件缓存,使得完成下载的文件不再占用缓存资源,从而提高资源的利用率。
在一个实施例中,所述判断所述第一文件完成下载的步骤,包括:
获取所述第一文件的总数据量以及完成下载数据量;
若所述第一文件的总数据量与所述完成下载数据量相同,计算已下载的第一文件的预设校验值;
获取所述第一文件的标准校验值;
若所述预设校验值与所述标准校验值相同,确定所述第一文件完成下载。
本实施例中,判断所述第一文件完成下载的一种实施方式,首先获取所述第一文件的总数据量以及完成下载数据量,若所述第一文件的总数据量与所述完成下载数据量相同,则判断所述第一文件完成数据的下载,再判断所述第一文件的下载的内容是否正确,具体的,计算已下载的第一文件的预设校验值,本实施例中,计算已下载的第一文件的MD5值作为预设校验值,再获取所述第一文件的标准校验值,所述标准校验值为校验第一文件内容不被篡改的校验值,若所述预设校验值与所述标准校验值相同,则确定已下载的第一文件的数据量相同,内容相同,从而确定所述第一文件完成下载,保证文件下载的正确性。
参照图2,本申请还提供一种基于FTP协议的文件下载装置,包括:
任务获取模块10,用于获取基于FTP协议的文件下载任务;
任务解析模块20,用于识别所述文件下载任务,确定所述文件下载任务的存储目录;
递归扫描模块30,用于对所述存储目录进行递归扫描,获取所述文件下载任务包含的若干个文件的下载信息,并将所述下载信息存储至下载缓存中;
任务监控模块40,用于监控所述文件下载任务,若所述文件下载任务发生异常,从所述下载缓存中获取导致异常的第一文件的第一下载信息;
进度解析模块50,用于解析所述第一下载信息,根据所述第一下载信息确定所述第一文件的下载进度信息;
任务配置模块60,用于根据所述下载进度信息重新配置所述第一文件的文件下载任务,以根据所述下载进度信息继续下载所述第一文件。
如上所述,可以理解地,本申请中提出的所述基于FTP协议的文件下载装置的各组成部分可以实现如上所述基于FTP协议的文件下载方法任一项的功能。
在一个实施例中,所述解析所述第一下载信息,根据所述第一下载信息确定所述第一文件的下载进度信息,包括:
解析所述第一下载信息,获取所述第一下载信息中所述第一文件的总数据量以及当前下载数据量;
根据所述当前下载数据量与所述总数据量确定所述第一文件的下载比例值;
根据所述下载比例值确定所述第一文件的下载进度信息。
在一个实施例中,所述解析所述第一下载信息,获取所述第一下载信息中所述第一文件的总数据量以及当前下载数据量,包括:
解析所述第一下载信息,获取所述第一下载信息中包含的第一文件的文件名、下载路径及总数据量;
根据所述文件名从所述下载路径中获取所述第一文件的当前下载数据量。
在一个实施例中,所述监控所述文件下载任务,若所述文件下载任务发生异常,从所述下载缓存中获取导致异常的第一文件的第一下载信息,包括:
监控所述文件下载任务,获取所述文件下载任务中第一文件的单位时间下载数据量;
若所述单位时间下载数据量低于预设值,且所述单位时间下载数据量低于预设值的持续时间超过预设时长,确定所述文件下载任务发生异常,并从所述下载缓存中获取所述第一文件的第一下载信息。
在一个实施例中,所述根据所述下载进度信息重新配置所述第一文件的文件下载任务,以根据所述下载进度信息继续下载所述第一文件,包括:
根据预设的时间间隔向所述第一文件的下载地址发送连接请求,以重新建立所述第一文件下载的网络连接,并根据所述下载进度信息从所述下载地址中继续下载所述第一文件。
在一个实施例中,所述根据所述下载进度信息重新配置所述第一文件的文件下载任务,以根据所述下载进度信息继续下载所述第一文件之后,还包括:
判断所述第一文件是否完成下载;
当所述第一文件完成下载后,删除所述下载缓存中所述第一文件对应的第一文件缓存。
在一个实施例中,所述判断所述第一文件完成下载的步骤,包括:
获取所述第一文件的总数据量以及完成下载数据量;
若所述第一文件的总数据量与所述完成下载数据量相同,计算已下载的所述第一文件的预设校验值;
获取所述第一文件的标准校验值;
若所述预设校验值与所述标准校验值相同,确定所述第一文件完成下载。
参照图3,本申请实施例中还提供一种计算机设备,该计算机设备可以是移动终端,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和显示装置及输入装置。其中,该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机设备的输入装置用于接收用户的输入。该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括存储介质。该存储介质存储有操作系统、计算机程序和数据库。该计算机设备的数据库用于存放数据。该计算机程序被处理器执行时以实现一种基于FTP协议的文件下载方法。
上述处理器执行上述的基于FTP协议的文件下载方法,包括:获取基于FTP协议的文件下载任务;识别所述文件下载任务,确定所述文件下载任务的存储目录;对所述存储目录进行递归扫描,获取所述文件下载任务包含的若干个文件的下载信息,并将所述下载信息存储至下载缓存中;监控所述文件下载任务,若所述文件下载任务发生异常,从所述下载缓存中获取导致异常的第一文件的第一下载信息;解析所述第一下载信息,根据所述第一下载信息确定所述第一文件的下载进度信息;根据所述下载进度信息重新配置所述第一文件的文件下载任务,以根据所述下载进度信息继续下载所述第一文件。
所述计算机设备提供了一种基于FTP协议的文件下载方法,对文件下载的过程进行监控、控制,完成文件的自动化、快速、完整下载,首先获取基于FTP协议的文件下载任务,然后识别所述文件下载任务,确定所述文件下载任务的存储目录,从所述文件下载任务中确定所述文件下载任务的存储目录,即文件下载的目录,然后对所述存储目录进行递归扫描,获取所述文件下载任务包含的若干个文件的下载信息,并将所述下载信息存储至下载缓存中;监控所述文件下载任务,若所述文件下载任务发生异常,从所述下载缓存中获取导致异常的第一文件的第一下载信息;然后解析所述第一下载信息,根据所述第一下载信息确定所述第一文件的下载进度信息,根据所述下载进度信息重新配置所述第一文件的文件下载任务,即重新配置第一文件的下载任务,从所述下载进度信息对应的进度对所述文件下载任务进行重新配置,根据所述下载进度信息继续下载所述第一文件,使得文件下载任务中的第一文件能够重新下载,提高文件下载任务中各个文件的下载成功率。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被所述处理器执行时实现一种基于FTP协议的文件下载方法,包括步骤:获取基于FTP协议的文件下载任务;识别所述文件下载任务,确定所述文件下载任务的存储目录;对所述存储目录进行递归扫描,获取所述文件下载任务包含的若干个文件的下载信息,并将所述下载信息存储至下载缓存中;监控所述文件下载任务,若所述文件下载任务发生异常,从所述下载缓存中获取导致异常的第一文件的第一下载信息;解析所述第一下载信息,根据所述第一下载信息确定所述第一文件的下载进度信息;根据所述下载进度信息重新配置所述第一文件的文件下载任务,以根据所述下载进度信息继续下载所述第一文件。
所述计算机可读存储介质提供了一种基于FTP协议的文件下载方法,对文件下载的过程进行监控、控制,完成文件的自动化、快速、完整下载,首先获取基于FTP协议的文件下载任务,然后识别所述文件下载任务,确定所述文件下载任务的存储目录,从所述文件下载任务中确定所述文件下载任务的存储目录,即文件下载的目录,然后对所述存储目录进行递归扫描,获取所述文件下载任务包含的若干个文件的下载信息,并将所述下载信息存储至下载缓存中;监控所述文件下载任务,若所述文件下载任务发生异常,从所述下载缓存中获取导致异常的第一文件的第一下载信息;然后解析所述第一下载信息,根据所述第一下载信息确定所述第一文件的下载进度信息,根据所述下载进度信息重新配置所述第一文件的文件下载任务,即重新配置第一文件的下载任务,从所述下载进度信息对应的进度对所述文件下载任务进行重新配置,根据所述下载进度信息继续下载所述第一文件,使得文件下载任务中的第一文件能够重新下载,提高文件下载任务中各个文件的下载成功率。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。
本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性或易失性存储器。
非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围。
凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (8)
1.一种基于FTP协议的文件下载方法,其特征在于,包括:
获取基于FTP协议的文件下载任务;
识别所述文件下载任务,确定所述文件下载任务的存储目录;
对所述存储目录进行递归扫描,获取所述文件下载任务包含的若干个文件的下载信息,并将所述下载信息存储至下载缓存中;
监控所述文件下载任务,若所述文件下载任务发生异常,从所述下载缓存中获取导致异常的第一文件的第一下载信息;
解析所述第一下载信息,根据所述第一下载信息确定所述第一文件的下载进度信息;
根据所述下载进度信息重新配置所述第一文件的文件下载任务,以根据所述下载进度信息继续下载所述第一文件;
所述解析所述第一下载信息,根据所述第一下载信息确定所述第一文件的下载进度信息,包括:
解析所述第一下载信息,获取所述第一下载信息中所述第一文件的总数据量以及当前下载数据量;
根据所述当前下载数据量与所述总数据量确定所述第一文件的下载比例值;
根据所述下载比例值确定所述第一文件的下载进度信息;
所述解析所述第一下载信息,获取所述第一下载信息中所述第一文件的总数据量以及当前下载数据量,包括:
解析所述第一下载信息,获取所述第一下载信息中的静态数据,其中所述静态数据包含的第一文件的文件名、下载路径及总数据量;
根据所述文件名从所述下载路径中获取所述第一文件的动态数据,其中所述动态数据包括当前下载数据量。
2.根据权利要求1所述的基于FTP协议的文件下载方法,其特征在于,所述监控所述文件下载任务,若所述文件下载任务发生异常,从所述下载缓存中获取导致异常的第一文件的第一下载信息,包括:
监控所述文件下载任务,获取所述文件下载任务中第一文件的单位时间下载数据量;
若所述单位时间下载数据量低于预设值,且所述单位时间下载数据量低于预设值的持续时间超过预设时长,确定所述文件下载任务发生异常,并从所述下载缓存中获取所述第一文件的第一下载信息。
3.根据权利要求1所述的基于FTP协议的文件下载方法,其特征在于,所述根据所述下载进度信息重新配置所述第一文件的文件下载任务,以根据所述下载进度信息继续下载所述第一文件,包括:
根据预设的时间间隔向所述第一文件的下载地址发送连接请求,以重新建立所述第一文件下载的网络连接,并根据所述下载进度信息从所述下载地址中继续下载所述第一文件。
4.根据权利要求1所述的基于FTP协议的文件下载方法,其特征在于,所述根据所述下载进度信息重新配置所述第一文件的文件下载任务,以根据所述下载进度信息继续下载所述第一文件之后,还包括:
判断所述第一文件是否完成下载;
当所述第一文件完成下载后,删除所述下载缓存中所述第一文件对应的第一文件缓存。
5.根据权利要求4所述的基于FTP协议的文件下载方法,其特征在于,所述判断所述第一文件完成下载的步骤,包括:
获取所述第一文件的总数据量以及完成下载数据量;
若所述第一文件的总数据量与所述完成下载数据量相同,计算已下载的所述第一文件的预设校验值;
获取所述第一文件的标准校验值;
若所述预设校验值与所述标准校验值相同,确定所述第一文件完成下载。
6.一种基于FTP协议的文件下载装置,其特征在于,用于执行权利要求1-5中任意一项所述的方法,包括:
任务获取模块,用于获取基于FTP协议的文件下载任务;
任务解析模块,用于识别所述文件下载任务,确定所述文件下载任务的存储目录;
递归扫描模块,用于对所述存储目录进行递归扫描,获取所述文件下载任务包含的若干个文件的下载信息,并将所述下载信息存储至下载缓存中;
任务监控模块,用于监控所述文件下载任务,若所述文件下载任务发生异常,从所述下载缓存中获取导致异常的第一文件的第一下载信息;
进度解析模块,用于解析所述第一下载信息,根据所述第一下载信息确定所述第一文件的下载进度信息;
任务配置模块,用于根据所述下载进度信息重新配置所述第一文件的文件下载任务,以根据所述下载进度信息继续下载所述第一文件。
7.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述基于FTP协议的文件下载方法的步骤。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述基于FTP协议的文件下载方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111521755.2A CN114205347B (zh) | 2021-12-13 | 2021-12-13 | 基于ftp协议的文件下载方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111521755.2A CN114205347B (zh) | 2021-12-13 | 2021-12-13 | 基于ftp协议的文件下载方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114205347A CN114205347A (zh) | 2022-03-18 |
CN114205347B true CN114205347B (zh) | 2023-11-14 |
Family
ID=80653218
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111521755.2A Active CN114205347B (zh) | 2021-12-13 | 2021-12-13 | 基于ftp协议的文件下载方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114205347B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1427169A1 (en) * | 2002-11-25 | 2004-06-09 | Culture.com Technology (Macau) Ltd | File-downloading system and method |
CN102811258A (zh) * | 2012-07-27 | 2012-12-05 | 北京星网锐捷网络技术有限公司 | 数据并发下载方法、装置和网络设备 |
CN105338121A (zh) * | 2015-12-03 | 2016-02-17 | 上海帝联信息科技股份有限公司 | Ftp服务端及文件传输方法 |
CN109462650A (zh) * | 2018-11-14 | 2019-03-12 | 深圳市小牛普惠投资管理有限公司 | 数据文件下载方法、装置、计算机设备及存储介质 |
CN110336871A (zh) * | 2019-07-01 | 2019-10-15 | 江苏满运软件科技有限公司 | 一种文件处理方法、装置、存储介质及电子设备 |
CN111600945A (zh) * | 2020-05-13 | 2020-08-28 | 上海英方软件股份有限公司 | 一种基于块传输的ftp服务器断点下载方法及装置 |
CN112887362A (zh) * | 2021-01-08 | 2021-06-01 | 重庆锐明信息技术有限公司 | 一种设备访问方法、设备访问装置及服务器 |
WO2021139131A1 (zh) * | 2020-01-09 | 2021-07-15 | 深圳壹账通智能科技有限公司 | 一种文件下载方法及相关产品 |
-
2021
- 2021-12-13 CN CN202111521755.2A patent/CN114205347B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1427169A1 (en) * | 2002-11-25 | 2004-06-09 | Culture.com Technology (Macau) Ltd | File-downloading system and method |
CN102811258A (zh) * | 2012-07-27 | 2012-12-05 | 北京星网锐捷网络技术有限公司 | 数据并发下载方法、装置和网络设备 |
CN105338121A (zh) * | 2015-12-03 | 2016-02-17 | 上海帝联信息科技股份有限公司 | Ftp服务端及文件传输方法 |
CN109462650A (zh) * | 2018-11-14 | 2019-03-12 | 深圳市小牛普惠投资管理有限公司 | 数据文件下载方法、装置、计算机设备及存储介质 |
CN110336871A (zh) * | 2019-07-01 | 2019-10-15 | 江苏满运软件科技有限公司 | 一种文件处理方法、装置、存储介质及电子设备 |
WO2021139131A1 (zh) * | 2020-01-09 | 2021-07-15 | 深圳壹账通智能科技有限公司 | 一种文件下载方法及相关产品 |
CN111600945A (zh) * | 2020-05-13 | 2020-08-28 | 上海英方软件股份有限公司 | 一种基于块传输的ftp服务器断点下载方法及装置 |
CN112887362A (zh) * | 2021-01-08 | 2021-06-01 | 重庆锐明信息技术有限公司 | 一种设备访问方法、设备访问装置及服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN114205347A (zh) | 2022-03-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106815135B (zh) | 漏洞检测方法及装置 | |
CN106484611B (zh) | 基于自动化协议适配的模糊测试方法和装置 | |
CN109344066B (zh) | 一种浏览器页面的测试方法、系统及终端 | |
CN107644075B (zh) | 收集页面信息的方法和装置 | |
CN108920691B (zh) | 前端静态资源的管理方法、装置、计算机设备及存储介质 | |
CN110750443A (zh) | 网页测试的方法、装置、计算机设备及存储介质 | |
CN104778178A (zh) | 一种应用分类方法、装置、及业务服务器 | |
CN112416794A (zh) | 代码覆盖率的处理方法、装置、设备及存储介质 | |
CN108255735B (zh) | 关联环境测试方法、电子装置及计算机可读存储介质 | |
CN111694734A (zh) | 软件接口校验方法、装置及计算机设备 | |
CN109032705B (zh) | 应用程序的执行方法、装置、电子设备及可读存储介质 | |
CN114205347B (zh) | 基于ftp协议的文件下载方法、装置、设备及存储介质 | |
CN107888451B (zh) | 一种Web服务器的测试方法及装置 | |
CN111984520A (zh) | 埋点测试方法、计算机设备及计算机可读存储介质 | |
CN113660359A (zh) | 域名解析记录的管理方法及装置、存储介质及电子设备 | |
CN113377669A (zh) | 自动化测试方法、装置、计算机设备和存储介质 | |
CN112612706A (zh) | 自动化测试方法、计算机设备及存储介质 | |
CN112822248A (zh) | 一种ota升级方法、装置、可读介质及电子设备 | |
CN112433872A (zh) | 一种接口请求超时提醒方法、系统及存储介质 | |
CN109815083B (zh) | 一种应用崩溃的监控方法、装置、电子设备及介质 | |
CN109298928B (zh) | 业务的处理方法及装置 | |
CN111756594A (zh) | 压力测试的控制方法、计算机设备和计算机可读存储介质 | |
CN114553944A (zh) | 预警消息推送方法和系统 | |
CN114500348A (zh) | 一种cdn网关测试方法及系统 | |
CN115729727A (zh) | 故障修复方法、装置、设备及介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |