CN110381107B - 文件下载方法、装置、计算机设备及存储介质 - Google Patents
文件下载方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN110381107B CN110381107B CN201910440471.7A CN201910440471A CN110381107B CN 110381107 B CN110381107 B CN 110381107B CN 201910440471 A CN201910440471 A CN 201910440471A CN 110381107 B CN110381107 B CN 110381107B
- Authority
- CN
- China
- Prior art keywords
- file
- fuzzy
- target
- information
- downloading
- 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
Images
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]
-
- 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/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
-
- 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/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/563—Data redirection of data network streams
Abstract
本发明实施例公开了一种文件下载方法、装置、计算机设备及存储介质,包括下述步骤:获取目标用户端的下载信息,其中,所述下载信息包括一个或多个指定文件的文件信息;根据所述文件信息在目标服务器集群中查找所述指定文件;根据预设的模糊查找规则在所述目标服务器集群中查找模糊文件,其中,所述模糊查找规则为根据所述文件信息确定所述指定文件的模糊信息,再根据模糊信息查找得到模糊文件的信息处理规则;将查找得到的所述指定文件和模糊文件利用预设的目标主服务器进行中转后下载至所述目标用户端。利用这种分布式下载方法可以从多个服务器、多个路径下载多个文件,并且支持模糊匹配下载,使得下载大量文件时更加便捷。
Description
技术领域
本发明涉及互联网应用技术领域,特别是涉及一种文件下载方法、装置、计算机设备及存储介质。
背景技术
目前的在线传输系统主要为单点上传单点下载方式,ftp文件传输系统(可以用ftp或者http协议来传输数据)就是一种典型的单点上传单点下载系统。这种系统目前主要是用于文件下载服务。这样的服务在互连网上很常见。服务器上的文件由管理员通过专用通道放到服务器上,比如通过本地存储接口(例如CDROM、移动硬盘等)、本地局域网或者其它专用上传通道等。这时上传文件往往都不是问题。但单点下载模型很难应付大量客户端的海量数据下载。为此人们通常在各个城市部署多个服务器来分流客户下载流量。通常此类分流是通过给用户提供多个选择的链接点来实现,例如在下载页面中给出一个链接列表,用户从该链接列表中选择提供下载的服务器。此类在线传输系统存在以下技术问题:
一、单点上传本身存在的问题。在用户较多时,用户争夺有限的服务器带宽资源,使服务器成为严重的瓶颈,而客户端的带宽却无法得到充分利用。
二、单点上传带来的下载问题。由于用户将他的文件传输到单一的服务器中,所以自己或其他人也只能从这个服务器下载数据,这显然不能最大限度地利用服务器和客户端的资源。在此类在线传输系统中,有很多用户的文件和数据并不是在很大的范围内共享,所以不可能被大量的用户同时下载,这样P2P多点下载方法就不能发挥作用,用户获取文件时的下载速度也退缩到单点下载系统的境地。
发明内容
本发明实施例能够提供一种支持多通道、多文件同时下载的文件下载方法、装置、计算机设备及存储介质。
为解决上述技术问题,本发明创造的实施例采用的一个技术方案是:提供一种文件下载方法,包括以下步骤:
获取目标用户端的下载信息,其中,所述下载信息包括一个或多个指定文件的文件信息;
根据所述文件信息在目标服务器集群中查找所述指定文件;
根据预设的模糊查找规则在所述目标服务器集群中查找模糊文件,其中,所述模糊查找规则为根据所述文件信息确定所述指定文件的模糊信息,再根据模糊信息查找得到模糊文件的信息处理规则;
将查找得到的所述指定文件和模糊文件利用预设的目标主服务器进行中转后下载至所述目标用户端。
可选地,所述将查找得到的所述指定文件和模糊文件利用预设的目标主服务器进行中转后下载至所述目标用户端,包括以下步骤:
在所述目标服务器集群中确定所述目标主服务器;
将所述指定文件和所述模糊文件下载至所述目标主服务器;
将目标主服务器中的文件下载至所述目标用户端。
可选地,所述在所述目标服务器集群中确定所述目标主服务器的步骤,包括以下步骤:
获取所述服务器集群中一个或多个主服务器与所述目标用户端的连接状态信息;
根据所述连接状态信息确定目标主服务器,其中,所述目标主服务器为与所述目标用户端连接速度最快或连接延迟最低的主服务器。
可选地,所述文件信息包括指定文件的服务器地址、文件路径和文件名称,所述根据所述文件信息在目标服务器集群中查找所述指定文件的步骤,包括以下步骤:
根据所述服务器地址确定目标从属服务器;
根据所述文件路径在所述从属服务器中确定目标路径;
根据所述文件名称在所述目标路径中查找所述指定文件。
可选地,所述根据预设的模糊查找规则在所述目标服务器集群中查找模糊文件的步骤,包括下述步骤:
获取所述文件信息中的文件路径;
将所述文件路径的上一级路径作为模糊路径;
在所述模糊路径中查找所述模糊文件。
可选地,所述根据预设的模糊查找规则在所述目标服务器集群中查找模糊文件的步骤,包括下述步骤:
获取所述文件信息中的文件名称;
将所述文件名称中的一个或多个字符替换为通配字符,生成模糊文件名;
根据所述模糊文件名查找所述模糊文件。
可选地,所述将查找得到的所述指定文件和模糊文件下载至用户端的步骤之后,包括下述步骤:
当下载文件中包含模糊文件时,根据所述模糊文件生成下载报告;
将所述下载报告发送至所述目标用户端。
为解决上述技术问题,本发明实施例还提供一种文件下载装置,包括:
获取模块,用于获取目标用户端的下载信息,其中,所述下载信息包括一个或多个指定文件的文件信息;
查找模块,用于根据所述文件信息在目标服务器集群中查找所述指定文件;
执行模块,用于根据预设的模糊查找规则在所述目标服务器集群中查找模糊文件,其中,所述模糊查找规则为根据所述文件信息确定所述指定文件的模糊信息,再根据模糊信息查找得到模糊文件的信息处理规则;
传输模块,用于将查找得到的所述指定文件和模糊文件利用预设的目标主服务器进行中转后下载至所述目标用户端。
可选地,所述文件下载装置,还包括:
第一处理子模块,用于在所述目标服务器集群中确定所述目标主服务器;
第一下载子模块,用于将所述指定文件和所述模糊文件下载至所述目标主服务器;
第二下载子模块,用于将目标主服务器中的文件下载至所述目标用户端。
可选地,所述文件下载装置,还包括:
第一获取子模块,用于获取所述服务器集群中一个或多个主服务器与所述目标用户端的连接状态信息;
第二处理子模块,用于根据所述连接状态信息确定目标主服务器,其中,所述目标主服务器为与所述目标用户端连接速度最快或连接延迟最低的主服务器。
可选地,所述文件下载装置,还包括:
第三处理子模块,用于根据所述服务器地址确定目标从属服务器;
第四处理子模块,用于根据所述文件路径在所述从属服务器中确定目标路径;
第五处理子模块,用于根据所述文件名称在所述目标路径中查找所述指定文件。
可选地,所述文件下载装置,还包括:
第二获取子模块,用于获取所述文件信息中的文件路径;
第一执行子模块,用于将所述文件路径的上一级路径作为模糊路径;
第一查找子模块,用于在所述模糊路径中查找所述模糊文件。
可选地,所述文件下载装置,还包括:
第三获取子模块,用于获取所述文件信息中的文件名称;
第六处理子模块,用于将所述文件名称中的一个或多个字符替换为通配字符,生成模糊文件名;
第二查找子模块,用于根据所述模糊文件名查找所述模糊文件。
可选地,所述文件下载装置,还包括:
第七处理子模块,用于当下载文件中包含模糊文件时,根据所述模糊文件生成下载报告;
第一传输子模块,用于将所述下载报告发送至所述目标用户端。
为解决上述技术问题,本发明实施例还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行上述所述文件下载方法的步骤。
为解决上述技术问题,本发明实施例还提供一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述所述文件下载方法的步骤。
本发明实施例的有益效果是:目标用户端的下载信息中可以包括多个文件信息,多个文件信息可以按顺序进行查找并下载,支持多服务器、多路径下载多个文件,提高了文件查找下载的效率。当根据文件信息查找不到指定文件时,根据模糊查找规则查找得到模糊文件,当文件信息出错时,通过模糊查找可以为用户提供相近或相似的文件,减少查找不到文件时用户重新进行查找所造成的时间和效率浪费。在获取到指定文件和模糊文件之后,通过目标主服务器进行中转再下载至目标用户端,可以实现用户端网络连接的优化利用,提高文件下载速度。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例文件下载方法的基本流程示意图;
图2为本发明实施例将文件经过目标主服务器中转后下载至目标用户端的流程示意图;
图3为本发明实施例确定目标主服务器的流程示意图;
图4为本发明实施例查找指定文件的流程示意图;
图5为本发明实施例利用模糊路径查找文件的流程示意图;
图6为本发明实施例利用通配符查找文件的流程示意图;
图7为本发明实施例生成并发送下载报告的流程示意图;
图8为本发明实施例文件下载装置的基本结构框图;
图9为本发明实施例计算机设备基本结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
在本发明的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如101、102等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本技术领域技术人员可以理解,这里所使用的“终端”、“终端设备”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,执行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备;PCS(PersonalCommunicationsService,个人通信系统),其可以组合语音、数据处理、传真和/或数据通信能力;PDA(PersonalDigitalAssistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或GPS(GlobalPositioningSystem,全球定位系统)接收器;常规膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的常规膝上型和/或掌上型计算机或其他设备。这里所使用的“终端”、“终端设备”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“终端”、“终端设备”还可以是通信终端、上网终端、音乐/视频播放终端,例如可以是PDA、MID(MobileInternetDevice,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。
具体地请参阅图1,图1为本实施例文件下载方法的基本流程示意图。
如图1所示,一种文件下载方法,包括以下步骤:
S1100、获取目标用户端的下载信息,其中,所述下载信息包括一个或多个指定文件的文件信息;
用户可以在用户端的界面中输入需要下载的指定文件信息,指定文件信息包括服务器IP地址、路径和文件名等内容,但不限于此,根据用户的需求不同,指定文件可以为一个或多个,在用户输入一个指定文件的信息之后,界面中可以出现确定下载和添加下载文件的选项,当用户选择确定下载之后,将根据文件信息在服务器集群中查找对应的文件并开始下载流程,当用户选择添加下载文件的选项之后,可以输入一个新的指定文件信息,输入完成重再次选择确定下载或添加下载文件,重复直至用户选择确定下载。在一些实施方式中,指定文件信息可以是以文件夹的形式,例如指定路径为“/root/file/”,则会以文件夹“file”中的所有文件作为下载文件。
S1200、根据所述文件信息在目标服务器集群中查找所述指定文件;
目标服务器集群中设置有多个从属服务器和主服务器,从属服务器用于存储文件数据,主服务器用于分别与用户端和文件所在的从属服务器建立连接,作为用户指定文件下载时的中转平台。
在获取到用户输入的指定文件信息之后,通过文件信息中的服务器IP地址确定指定文件所存储的服务器,与服务器建立连接,并根据文件信息中的路径确定文件位置,根据文件信息中的文件名称确定目标文件。当下载信息中包含多个文件信息时,按用户的输入顺序进行查找,在一些实施方式中,可以根据文件信息中的服务器地址和路径对多个指定文件进行分类,按顺序查找相同服务器或相同路径下的多个文件,然后再查找其他服务器或路径下的其他文件。
在一些实施方式中,用户输入的文件信息中可以包括通配符,例如“*”,通配符在查找时可以被解读为任意字符。当用户需要进行通配文件下载时,输入的文件信息可以包括“*”,例如文件名为“*aa.txt”,查找文件时则会将指定路径下所有以“aa”结尾的txt格式文件都确定为指定文件。当用户需要进行通配路径查找时,输入的路径中可以包括“*”,例如“/root/file/*abc/”,即file路径下所有“abc”结尾的路径都可以作为目标路径,并在所有目标路径中查找对应的指定文件。在一些实施方式中,通配文件和通配路径可以一起使用,例如文件信息包括“/root/file/*abc/*aa.txt”,即查找“/root/file”路径下所有以“abc”结尾的文件夹中所有以“aa”结尾的txt格式文件。
S1300、根据预设的模糊查找规则在所述目标服务器集群中查找模糊文件,其中,所述模糊查找规则为根据所述文件信息确定所述指定文件的模糊信息,再根据模糊信息查找得到模糊文件的信息处理规则;
根据文件信息查找指定文件之后,判断是否达到模糊查找的启动条件,当达到启动条件时,启动模糊查找流程。模糊查找的启动条件可以根据实际的应用场景进行设置,例如当根据文件信息查找不到指定文件时,或者根据文件信息查找到的指定文件不符合目标数量要求时,但不限于此。模糊查找的方式可以是根据文件名称或者路径等信息进行修改或替换得到模糊信息进行查找。在一些实施方式中,当开始模糊查找时,在指定路径的上一级路径中查找对应的文件,当上一级路径查找文件之后,仍符合启动条件,在再上一级的路径中查找,直至到达目标服务器的根目标进行查找,例如,用户输入的文件信息中的路径为“/root/file/abc/zz.txt”,当“/root/file/abc/”中查找不到“zz.txt”的文件时,返回到“/root/file/”中进行查找,以此类推。在另一些实施方式中,当开始模糊查找时,将文件信息的文件名更改为通配符再进行查找,例如当查找不到“ZZ.txt”的文件时,在对应的路径中查找“Z*.txt”或者“*Z.txt”,利用通配符修改文件名称进行查找时,首先对文件名称中的一个字符进行修改,当修改一个字符作为通配符查找不到模糊文件时,将文件名中的两个字符修改为通配符,以此类推。模糊查找的方式还可以是更改查找的文件格式,或者将多种模糊查找的方式结合在一起使用,在此不再赘述。
S1400、将查找得到的所述指定文件和模糊文件利用预设的目标主服务器进行中转后下载至所述目标用户端;
在确定了指定文件和模糊文件的存储位置之后,在服务器集群中确定其中一个主服务器作为目标主服务器,用于与文件存储的从属服务器和用户端分别建立连接,起中转作用。目标主服务器为目标服务器集群的所有主服务中与用户端连接状态最好的一个,连接状态的判断可以根据连接速度和延迟等等,但不限于此,例如获取得到用户端与所有主服务器的延迟信息,从中确定延迟最小的一个主服务器作为目标主服务器。
在确定了目标主服务器之后,建立目标主服务器与所有指定文件和模糊文件所在的从属服务器的连接,将所有的指定文件和模糊文件下载到主服务器中,当所有文件下载完成之后,将主服务器中的文件下载到目标用户端。在一些实施方式中,在从属服务器下载文件到主服务器中的同时,当其中一个或多个文件已经传输完毕时即开始主服务器到用户端的下载。
如图2所示,步骤S1400之前还包括以下步骤:
S1350、在所述目标服务器集群中确定所述目标主服务器;
服务器集群中设置有多个主服务器,每个主服务器可以架设在不同的线路上,以适应不同用户的网络状态。在查找确定了指定文件和模糊文件在从属服务器上的位置之后,对目标用户端与所有主服务器进行连接状态测试,选择其中连接状态最好的一个主服务器作为目标主服务器。在一些实施方式中,连接状态可以通过数据传输速度或者延迟的数值来表示,但不限于此,以数据传输速度为例,获取目标用户端与所有主服务器之间的数据传输速度,根据数值的大小进行排序,选择其中数据传输速度的值最大的一个主服务器作为目标主服务器。
S1360、将所述指定文件和所述模糊文件下载至所述目标主服务器;
在确定了目标主服务器之后,将目标主服务器与查找得到的指定文件和模糊文件所处的从属服务器建立连接,并在从属服务器中获取到本次下载信息对应的所有文件,将文件下载至目标主服务器中,存储在目标主服务器指定的存储位置中。
S1370、将目标主服务器中的文件下载至所述目标用户端;
在将下载信息对应的文件下载到目标主服务器之后,将目标主服务器中对应的文件下载到目标用户端。文件下载至目标用户端的流程开始时间可以是将所有的文件下载至目标主服务器之后,也可以是其中一个或多个文件下载到目标主服务器之后,例如,其中一个文件已经完全下载至目标主服务器,但其他文件仍在传输,即可以开始将已下载完成的文件下载至目标用户端的流程。
在一些实施方式中在进行文件下载时,每一个下载都是一个独立的进程,所有的下载可以同时进行,当所有文件的总下载速度超过用户端所支持的最大速度时,按照一定的顺序对文件进行下载,保证第一个文件的下载速度,再将剩余的带宽分配给第二个文件,第二个文件到达其对应的最大速度时,再将剩余的带宽分配给第三个文件,以此类推,直至用户端传输数据量满载,未分配到的文件暂停等候空余带宽再按顺序进行分配。下载顺序的确定可以根据实际应用场景进行设置,例如根据用户输入文件信息的顺序或者文件大小顺序等,但不限于此,在此不作限定。
通过目标主服务器对下载文件进行中转,可以有效实现多个文件的同时下载,提高文件下载效率,同时,确定的目标主服务器为与用户端连接状态最好的一个主服务器,保证了下载过程中连接的稳定性。
如图3所示,步骤S1350具体包括以下步骤:
S1351、获取所述服务器集群中一个或多个主服务器与所述目标用户端的连接状态信息;
服务器集群中设置有多个主服务器,每个主服务器可以架设在不同的线路上,以适应不同用户的网络状态。在查找确定了指定文件和模糊文件在从属服务器上的位置之后,对目标用户端与所有主服务器进行连接状态测试,获取测试得到的连接状态信息。连接状态信息包括数据传输速度或者延迟的数值,但不限于此。
S1352、根据所述连接状态信息确定目标主服务器,其中,所述目标主服务器为与所述目标用户端连接速度最快或连接延迟最低的主服务器;
以数据传输速度作为连接状态信息的表达方式为例,获取目标用户端与所有主服务器之间的数据传输速度,根据数值的大小进行排序,选择其中数据传输速度的值最大的一个主服务器作为目标主服务器。当服务器集群中只有一个主服务器时,直接将该主服务器作为目标主服务器。
在服务器集群中选择与用户端连接状态最好的一个主服务器作为目标主服务器,提高了在文件中转后下载的过程中连接的稳定性,也有效保证了文件从主服务器下载到用户端的传输速度,提高文件下载效率。
如图4所示,步骤S1200具体包括以下步骤:
S1210、根据所述服务器地址确定目标从属服务器;
获取指定文件的文件信息中的服务器IP地址,在目标服务器集群中根据服务器IP地址确定指定文件所在的从属服务器端口位置,从而确定从属服务器。
S1220、根据所述文件路径在所述从属服务器中确定目标路径;
在确定了从属服务器之后,获取到从属服务器中存储文件的信息,根据文件信息中的文件路径在从属服务器存储位置中查找对应的目标路径。在一些实施方式中,文件路径中可以包含通配符,例如“/root/file/*abc/”,将“file”文件夹下所有“abc”为结尾的文件夹都当成目标文件夹,获取到所有目标文件夹的路径作为目标路径。
S1230、根据所述文件名称在所述目标路径中查找所述指定文件;
在确定了目标路径之后,获取到目标路径中所有文件的名称,并根据文件信息中的文件名称查找对应的指定文件。在一些实施方式中,文件名称可以包含通配符,例如文件名为“*aa.txt”,查找文件时则会将目标路径下所有以“aa”结尾的txt格式文件都确定为指定文件。
利用文件信息从服务器集群中确定指定文件存储的从属服务器,并确定指定文件所在的位置,可以有效地从服务器集群的众多服务器中查找得到指定文件,提高了文件查找效率和准确性。
如图5所示,步骤S1300具体包括下述步骤:
S1311、获取所述文件信息中的文件路径;
当根据文件信息查找不到对应的指定文件时,启动模糊查找流程。获取到文件信息中的文件路径。
S1312、将所述文件路径的上一级路径作为模糊路径;
在指定路径的上一级路径中查找对应的文件,当上一级路径查找不到对应文件时,在再上一级的路径中查找,直至到达目标服务器的根目录进行查找。首先将指定路径的上一级路径作为模糊路径,例如,用户输入的文件信息中的路径为“/root/file/abc/zz.txt”,当“/root/file/abc/”中查找不到“zz.txt”的文件时,将上一级路径“/root/file/”作为模糊路径。
S1313、在所述模糊路径中查找所述模糊文件;
确定了模糊路径之后,根据文件名称在模糊路径下查找对应的文件,作为模糊文件,模糊路径中查找得到的模糊文件可以为一个或多个,当模糊路径下查找不到对应的文件时,重新定义模糊路径的上一级路径为新的模糊路径,重新进行查找,直至查找得到一个或以上的文件或者返回到从属服务器的根目录为止。
在查找不到指定文件时,通过模糊路径进行模糊查找,可以在用户输入的文件路径有误时为用户提供备选文件,提高文件下载的容错率,避免用户重新进行查找所浪费的资源。
如图6所示,步骤S1300具体包括下述步骤:
S1321、获取所述文件信息中的文件名称;
当根据文件信息查找不到对应的指定文件时,启动模糊查找流程。获取到文件信息中的文件名称。
S1322、将所述文件名称中的一个或多个字符替换为通配字符,生成模糊文件名;
将文件信息的文件名更改为通配符,生成模糊文件名,例如当查找不到“ZZ.txt”的文件时,在对应的路径中查找“Z*.txt”或者“*Z.txt”,将得到带有通配符的文件名作为模糊文件名。利用通配符修改文件名称时,首先对文件名称中的一个字符进行修改,当修改一个字符作为通配符查找不到模糊文件时,将文件名中的两个字符修改为通配符,以此类推。在一些实施方式中,可以对通配符的替换数量设置上限值,当通配符的数量到达上限值之后仍查找不到模糊文件时,停止查找。上限值的设定可以根据的实际应用场景进行调整,例如可以是确定的数据,比如3个,也可以是一定的比例,比如文件名称的一半数量,但不限于此,在此不作限定。
S1323、根据所述模糊文件名查找所述模糊文件;
确定了模糊文件名之后,在目标路径下根据模糊文件名进行查找对应的模糊文件。查找得到的模糊文件可以为一个或多个,当模糊文件名查找不到对应的文件时,重新定义包含更多通配符的文件名作为新的模糊文件名,重新进行查找,直至查找得到一个或以上的文件或者模糊文件名中的通配符数量达到上限值。
在查找不到指定文件时,通过模糊文件名进行模糊查找,可以在用户输入的文件路径有误时为用户提供备选文件,提高文件下载的容错率,避免用户重新进行查找所浪费的资源。
如图7所示,步骤S1400之后还包括下述步骤:
S1410、当下载文件中包含模糊文件时,根据所述模糊文件生成下载报告;
当下载文件中包含模糊文件,即下载过程中有使用到模糊查找并下载到模糊文件时,在下载完毕后根据所包含的模糊文件生成对应的下载报告,下载报告中包含了本次下载过程中所有模糊文件相关的提示信息,以引导用户对模糊文件进行确认。例如,“查找不到目标文件xxx,通过模糊查找在zzzz路径查找得到xxx文件”。在一些实施方式中,通过模糊查找未查找到模糊文件时,下载报告中添加相应的提示信息,例如“通过模糊查找仍然查找不到文件xxx以及相关的模糊文件,请确认文件信息是否正确”。
S1420、将所述下载报告发送至所述目标用户端;
在生成下载报告之后,将下载报告发送至目标用户端,以引导用户对本次下载的模糊文件进行确认。在一些实施方式中,用户端在接收到下载报告之后,触发预设的提示指令,以引导用户查找下载报告,提示指令可以是闹铃、亮屏或者振动等方式,也可以是多种方式的结合,在此不作限定。
为解决上述技术问题,本发明实施例还提供一种文件下载装置。具体请参阅图8,图8为本实施文件下载装置的基本结构框图。
如图8所示,文件下载装置,包括:获取模块2100、查找模块2200、执行模块2300和传输模块2400。其中,获取模块用于获取目标用户端的下载信息,其中,所述下载信息包括一个或多个指定文件的文件信息;查找模块用于根据所述文件信息在目标服务器集群中查找所述指定文件;执行模块用于根据预设的模糊查找规则在所述目标服务器集群中查找模糊文件,其中,所述模糊查找规则为根据所述文件信息确定所述指定文件的模糊信息,再根据模糊信息查找得到模糊文件的信息处理规则;传输模块用于将查找得到的所述指定文件和模糊文件利用预设的目标主服务器进行中转后下载至所述目标用户端。
目标用户端的下载信息中可以包括多个文件信息,多个文件信息可以按顺序进行查找并下载,支持多服务器、多路径下载多个文件,提高了文件查找下载的效率。当根据文件信息查找不到指定文件时,根据模糊查找规则查找得到模糊文件,当文件信息出错时,通过模糊查找可以为用户提供相近或相似的文件,减少查找不到文件时用户重新进行查找所造成的时间和效率浪费。在获取到指定文件和模糊文件之后,通过目标主服务器进行中转再下载至目标用户端,可以实现用户端网络连接的优化利用,提高文件下载速度。
在一些实施方式中,文件下载装置还包括:第一处理子模块、第一下载子模块、第二下载子模块。其中第一处理子模块用于在所述目标服务器集群中确定所述目标主服务器;第一下载子模块用于将所述指定文件和所述模糊文件下载至所述目标主服务器;第二下载子模块用于将目标主服务器中的文件下载至所述目标用户端。
在一些实施方式中,文件下载装置还包括:第一获取子模块、第二处理子模块。其中,第一获取子模块用于获取所述服务器集群中一个或多个主服务器与所述目标用户端的连接状态信息;第二处理子模块用于根据所述连接状态信息确定目标主服务器,其中,所述目标主服务器为与所述目标用户端连接速度最快或连接延迟最低的主服务器。
在一些实施方式中,文件下载装置还包括:第三处理子模块、第四处理子模块、第五处理子模块。其中,第三处理子模块用于根据所述服务器地址确定目标从属服务器;第四处理子模块用于根据所述文件路径在所述从属服务器中确定目标路径;第五处理子模块用于根据所述文件名称在所述目标路径中查找所述指定文件。
在一些实施方式中,文件下载装置还包括:第二获取子模块、第一执行子模块、第一查找子模块。其中,第二获取子模块用于获取所述文件信息中的文件路径;第一执行子模块用于将所述文件路径的上一级路径作为模糊路径;第一查找子模块用于在所述模糊路径中查找所述模糊文件。
在一些实施方式中,文件下载装置还包括:第三获取子模块、第六处理子模块、第二查找子模块。其中,第三获取子模块用于获取所述文件信息中的文件名称;第六处理子模块用于将所述文件名称中的一个或多个字符替换为通配字符,生成模糊文件名;第二查找子模块用于根据所述模糊文件名查找所述模糊文件。
在一些实施方式中,文件下载装置还包括:第七处理子模块、第一传输子模块。其中,第七处理子模块用于当下载文件中包含模糊文件时,根据所述模糊文件生成下载报告;第一传输子模块用于将所述下载报告发送至所述目标用户端。
为解决上述技术问题,本发明实施例还提供一种计算机设备。具体请参阅图9,图9为本实施例计算机设备基本结构框图。
如图9所示,计算机设备的内部结构示意图。如图9所示,该计算机设备包括通过系统总线连接的处理器、非易失性存储介质、存储器和网络接口。其中,该计算机设备的非易失性存储介质存储有操作系统、数据库和计算机可读指令,数据库中可存储有控件信息序列,该计算机可读指令被处理器执行时,可使得处理器实现一种文件下载方法。该计算机设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该计算机设备的存储器中可存储有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种文件下载方法。该计算机设备的网络接口用于与终端连接通信。本领域技术人员可以理解,图中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本实施方式中处理器用于执行图8中获取模块2100、查找模块2200、执行模块2300和传输模块2400的具体功能,存储器存储有执行上述模块所需的程序代码和各类数据。网络接口用于向用户终端或服务器之间的数据传输。本实施方式中的存储器存储有文件下载装置中执行所有子模块所需的程序代码及数据,服务器能够调用服务器的程序代码及数据执行所有子模块的功能。
本发明还提供一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述任一实施例所述文件下载方法的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)等非易失性存储介质,或随机存储记忆体(RandomAccessMemory,RAM)等。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (9)
1.一种文件下载方法,其特征在于,包括以下步骤:
获取目标用户端的下载信息,其中,所述下载信息包括一个或多个指定文件的文件信息;
根据所述文件信息在目标服务器集群中查找所述指定文件;
根据预设的模糊查找规则在所述目标服务器集群中查找模糊文件,其中,所述模糊查找规则为根据所述文件信息确定所述指定文件的模糊信息,再根据模糊信息查找得到模糊文件的信息处理规则;
将查找得到的所述指定文件和模糊文件利用预设的目标主服务器进行中转后下载至所述目标用户端;
所述根据预设的模糊查找规则在所述目标服务器集群中查找模糊文件的步骤,包括下述步骤:
获取所述文件信息中的文件路径;
将所述文件路径的上一级路径作为模糊路径;
在所述模糊路径中查找所述模糊文件。
2.如权利要求1所述的文件下载方法,其特征在于,所述将查找得到的所述指定文件和模糊文件利用预设的目标主服务器进行中转后下载至所述目标用户端,包括以下步骤:
在所述目标服务器集群中确定所述目标主服务器;
将所述指定文件和所述模糊文件下载至所述目标主服务器;
将目标主服务器中的文件下载至所述目标用户端。
3.如权利要求2所述的文件下载方法,其特征在于,所述在所述目标服务器集群中确定所述目标主服务器的步骤,包括以下步骤:
获取所述服务器集群中一个或多个主服务器与所述目标用户端的连接状态信息;
根据所述连接状态信息确定目标主服务器,其中,所述目标主服务器为与所述目标用户端连接速度最快或连接延迟最低的主服务器。
4.如权利要求1所述的文件下载方法,其特征在于,所述文件信息包括指定文件的服务器地址、文件路径和文件名称,所述根据所述文件信息在目标服务器集群中查找所述指定文件的步骤,包括以下步骤:
根据所述服务器地址确定目标从属服务器;
根据所述文件路径在所述从属服务器中确定目标路径;
根据所述文件名称在所述目标路径中查找所述指定文件。
5.如权利要求1所述的文件下载方法,其特征在于,所述根据预设的模糊查找规则在所述目标服务器集群中查找模糊文件的步骤,包括下述步骤:
获取所述文件信息中的文件名称;
将所述文件名称中的一个或多个字符替换为通配字符,生成模糊文件名;
根据所述模糊文件名查找所述模糊文件。
6.如权利要求1-5任一项所述的文件下载方法,其特征在于,所述将查找得到的所述指定文件和模糊文件下载至用户端的步骤之后,包括下述步骤:
当下载文件中包含模糊文件时,根据所述模糊文件生成下载报告;
将所述下载报告发送至所述目标用户端。
7.一种文件下载装置,其特征在于,包括:
获取模块,用于获取目标用户端的下载信息,其中,所述下载信息包括一个或多个指定文件的文件信息;
查找模块,用于根据所述文件信息在目标服务器集群中查找所述指定文件;
执行模块,用于根据预设的模糊查找规则在所述目标服务器集群中查找模糊文件,其中,所述模糊查找规则为根据所述文件信息确定所述指定文件的模糊信息,再根据模糊信息查找得到模糊文件的信息处理规则;
传输模块,用于将查找得到的所述指定文件和模糊文件利用预设的目标主服务器进行中转后下载至所述目标用户端;
第二获取子模块,用于获取所述文件信息中的文件路径;
第一执行子模块,用于将所述文件路径的上一级路径作为模糊路径;
第一查找子模块,用于在所述模糊路径中查找所述模糊文件。
8.一种计算机设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述权利要求1-6任意一项所述的文件下载方法。
9.一种非临时性计算机可读存储介质,当所述存储介质中的指令由移动终端的处理器执行时,使得移动终端能够执行一种文件下载方法,所述方法包括上述权利要求1-6任意一项所述的文件下载方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910440471.7A CN110381107B (zh) | 2019-05-24 | 2019-05-24 | 文件下载方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910440471.7A CN110381107B (zh) | 2019-05-24 | 2019-05-24 | 文件下载方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110381107A CN110381107A (zh) | 2019-10-25 |
CN110381107B true CN110381107B (zh) | 2023-04-07 |
Family
ID=68248742
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910440471.7A Active CN110381107B (zh) | 2019-05-24 | 2019-05-24 | 文件下载方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110381107B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111835856B (zh) * | 2020-07-17 | 2022-09-16 | 北京百度网讯科技有限公司 | 文件下载的方法、装置、设备以及存储介质 |
CN112306973B (zh) * | 2020-11-05 | 2023-08-04 | 杭州海康威视数字技术股份有限公司 | 一种图片导入系统及方法 |
CN113835843A (zh) * | 2021-09-29 | 2021-12-24 | 平安养老保险股份有限公司 | redis集群的模糊操作方法、装置、计算机设备和存储介质 |
CN115348254B (zh) * | 2022-07-21 | 2023-05-30 | 昆仑数智科技有限责任公司 | 文件打包下载方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101599066A (zh) * | 2008-06-03 | 2009-12-09 | 鸿富锦精密工业(深圳)有限公司 | 文档批量操作管理系统及方法 |
CN101770470A (zh) * | 2008-12-31 | 2010-07-07 | 中国银联股份有限公司 | 一种文件类型识别分析方法及系统 |
CN103248695A (zh) * | 2013-05-07 | 2013-08-14 | 北京奇虎科技有限公司 | 文件下载方法、系统及cdn中的服务器节点 |
CN103685366A (zh) * | 2012-09-10 | 2014-03-26 | 腾讯科技(深圳)有限公司 | 提高文件下载速度的方法、装置及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103379362B (zh) * | 2012-04-24 | 2017-07-07 | 腾讯科技(深圳)有限公司 | 视频点播方法和系统 |
CN105162878B (zh) * | 2015-09-24 | 2018-08-31 | 网宿科技股份有限公司 | 基于分布式存储的文件分发系统及方法 |
-
2019
- 2019-05-24 CN CN201910440471.7A patent/CN110381107B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101599066A (zh) * | 2008-06-03 | 2009-12-09 | 鸿富锦精密工业(深圳)有限公司 | 文档批量操作管理系统及方法 |
CN101770470A (zh) * | 2008-12-31 | 2010-07-07 | 中国银联股份有限公司 | 一种文件类型识别分析方法及系统 |
CN103685366A (zh) * | 2012-09-10 | 2014-03-26 | 腾讯科技(深圳)有限公司 | 提高文件下载速度的方法、装置及系统 |
CN103248695A (zh) * | 2013-05-07 | 2013-08-14 | 北京奇虎科技有限公司 | 文件下载方法、系统及cdn中的服务器节点 |
Also Published As
Publication number | Publication date |
---|---|
CN110381107A (zh) | 2019-10-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110381107B (zh) | 文件下载方法、装置、计算机设备及存储介质 | |
US10044798B2 (en) | Context-aware task offloading among multiple devices | |
EP2985707A1 (en) | Method and apparatus for finding file in storage device and router and medium | |
CN103577503A (zh) | 云端文件存储系统及方法 | |
EP1808993A2 (en) | Transmission apparatus having a plurality of network interfaces and transmission method using the same | |
CN111399756B (zh) | 一种数据存储方法、数据下载方法及装置 | |
US8341285B2 (en) | Method and system for transferring files | |
CN101867976A (zh) | 基于移动终端号码的负载均衡方法和设备 | |
US11276037B2 (en) | Search prioritization interfaces for communication platform users | |
CN111193668B (zh) | 流量分配方法、装置、计算机设备及存储介质 | |
CN105357321A (zh) | 基于摘要值的文件传输方法、终端和文件服务器 | |
CN103957306A (zh) | 在通信终端共享信息的方法和设备 | |
US10484485B2 (en) | Context-aware task processing for multiple devices | |
CN103036983A (zh) | 一种信息获取的方法、网络节点、服务器及系统 | |
CN113852555B (zh) | 一种基于网关的多通道路由快速转发和智能选路方法 | |
CN112511868B (zh) | 视频播放方法、装置、电子设备及计算机存储介质 | |
CN112016134B (zh) | 一种验证文件完整性的方法及装置 | |
CN101146107A (zh) | 一种下载数据的方法及装置 | |
CN111049927B (zh) | 一种文件存储方法、装置、电子设备和存储介质 | |
CN103220327B (zh) | 用户信息存储方法及装置 | |
US8484182B1 (en) | Wireless device content searching | |
CN101610165A (zh) | 一种自动扩散资源的方法和装置 | |
US20230064789A1 (en) | Information management method, information management program, and information management device | |
KR100719186B1 (ko) | 수신장치, 수신시스템 및 수신방법 | |
CN114285784A (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 |