CN115086299B - 文件下载方法、装置、设备、介质和程序产品 - Google Patents
文件下载方法、装置、设备、介质和程序产品 Download PDFInfo
- Publication number
- CN115086299B CN115086299B CN202210609264.1A CN202210609264A CN115086299B CN 115086299 B CN115086299 B CN 115086299B CN 202210609264 A CN202210609264 A CN 202210609264A CN 115086299 B CN115086299 B CN 115086299B
- Authority
- CN
- China
- Prior art keywords
- file
- downloaded
- target
- list
- client
- 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 59
- 238000012163 sequencing technique Methods 0.000 claims abstract description 12
- 238000004590 computer program Methods 0.000 claims description 15
- 230000005540 biological transmission Effects 0.000 claims description 13
- 238000004891 communication Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000006872 improvement Effects 0.000 description 3
- 230000000737 periodic effect Effects 0.000 description 3
- 238000009825 accumulation Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000013480 data collection Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000006467 substitution reaction Methods 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]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/625—Queue scheduling characterised by scheduling criteria for service slots or service orders
- H04L47/6275—Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提供一种文件下载方法、装置、设备、介质和程序产品,包括:在接收到至少一个第二客户端发送的文件下载请求的情况下,统计出各第一客户端匹配的待下载文件列表;按照待下载文件列表的待下载文件总量从大到小的顺序进行排序,得到列表优先级队列;遍历处于空闲状态的目标服务器,并根据列表优先级队列依次为遍历到的目标服务器分配待下载文件列表,得到各目标服务器关联的至少一个待下载文件列表,并调用目标服务器从待下载文件列表匹配的所述第一客户端中下载目标文件。由此通过根据列表优先级队列进行待下载文件列表均衡分配,实现了提高服务器负载均衡,进而提高文件下载效率。
Description
技术领域
本发明涉及计算机通信技术领域,尤其涉及一种文件下载方法、装置、设备、介质和程序产品。
背景技术
目前为了提高业务处理效率及保障业务数据可靠性,业务数据的采集及核对等流程分别分配至不同的分支机构去处理,例如对于银行代理保险业务通常需要由各银行网点代理客户端通过录音录像等技术手段采集保险登记数据,通过整理后生成一单保险数据文件。各保险客户端通过服务器从各银行网点代理终端中下载保险数据文件,复核完成后再保存在对应的银行网点代理终端。
现有方案中,采用分别指定多台服务器依次去固定指定的银行网点代理客户端中进行文件下载,然而在从各银行网点代理银行网点代理终端中下载保险数据文件时,由于服务器与各客户端之间的数据交易量及网络宽带之间存在差异性,导致服务器负载分配不均,造成部分文件下载积累,进而影响文件下载效率。
发明内容
本发明提供一种文件下载方法、装置、设备、介质和程序产品,用以解决现有技术中服务器负载分配不均,导致文件下载效率低的缺陷,实现了提高服务器负载均衡,进而提高文件下载效率。
本发明提供一种文件下载方法,包括:
在接收到至少一个第二客户端发送的文件下载请求的情况下,统计出各第一客户端匹配的待下载文件列表,其中,所述第一客户端为采集文件数据的客户端,所述第二客户端为复核文件数据的客户端;
按照所述待下载文件列表的待下载文件总量从大到小的顺序进行排序,得到列表优先级队列;
遍历处于空闲状态的目标服务器,并根据所述列表优先级队列依次为遍历到的所述目标服务器分配待下载文件列表,得到各所述目标服务器关联的至少一个待下载文件列表,并调用所述目标服务器从所述待下载文件列表匹配的所述第一客户端中下载目标文件。
根据本发明提供的一种文件下载方法,所述遍历处于空闲状态的目标服务器,并根据所述列表优先级队列依次为遍历到的所述目标服务器分配待下载文件列表,得到各所述目标服务器关联的至少一个待下载文件列表,具体包括:
遍历各所述服务器的负载状态,并在所述服务器的负载小于预设负载的情况下,将所述服务器标识为处于空闲状态的目标服务器;
根据所述列表优先级队列依次为遍历到的所述目标服务器分配一个待下载文件列表;
遍历各所述目标服务器的负载状态,确定负载最小的目标服务器,并根据所述列表优先级队列为所述目标服务器分配一个待下载文件列表;
返回执行所述遍历各所述目标服务器的负载状态,继续执行所述确定负载最小的目标服务器,并根据所述列表优先级队列为所述目标服务器分配一个待下载文件列表,直至所述待下载文件列表分配完毕。
根据本发明提供的一种文件下载方法,所述调用所述目标服务器从所述待下载文件列表匹配的所述第一客户端中下载目标文件之后,还包括:
周期性遍历各所述目标服务器待下载的目标文件大小及各所述目标服务器的文件下载通道的数据传输速度;
根据所述数据传输速度及所述目标文件大小计算出各所述目标服务器的下载时长,并根据所述下载时长调整所述目标服务器关联的至少一个待下载文件列表。
根据本发明提供的一种文件下载方法,所述调用所述目标服务器从所述待下载文件列表匹配的所述第一客户端中下载目标文件之后,还包括:
周期性遍历除所述目标服务器之外的各服务器的负载状态,并在所述服务器的负载小于预设负载的情况下,将所述服务器标识为处于空闲状态的备选服务器;
计算出各所述目标服务器的下载时长,并在所述目标服务器的下载时长超出预设时长的情况下,从所述目标服务器关联的至少一个待下载文件列表中选取出至少一个目标待下载文件列表,并调用所述备选服务器从所述目标待下载文件列表匹配的所述第一客户端中下载目标文件。
根据本发明提供的一种文件下载方法,所述在接收到至少一个所述第二客户端发送的文件下载请求的情况下,统计出各所述第一客户端匹配的待下载文件列表,具体包括:
在接收到至少一个所述第二客户端发送的文件下载请求的情况下,对各所述文件下载请求进行解析,得到各所述文件下载请求携带的文件标识;
根据所述文件标识统计出各所述第一客户端匹配的待下载文件列表。
根据本发明提供的一种文件下载方法,所述调用所述目标服务器从所述待下载文件列表匹配的所述第一客户端中下载目标文件之后,还包括:
根据各所述第二客户端发送的文件下载请求携带的文件标识对至少一个目标文件进行汇总,得到各所述第二客户端匹配的目标文件列表,并将各所述目标文件列表中关联的目标文件反馈至各所述第二客户端。
本发明还提供一种文件下载装置,包括:
统计单元,用于在接收到至少一个第二客户端发送的文件下载请求的情况下,统计出各第一客户端匹配的待下载文件列表,其中,所述第一客户端为采集文件数据的客户端,所述第二客户端为复核文件数据的客户端;
排序单元,用于按照所述待下载文件列表的待下载文件总量从大到小的顺序进行排序,得到列表优先级队列;
分配单元,用于遍历处于空闲状态的目标服务器,并根据所述列表优先级队列依次为遍历到的所述目标服务器分配待下载文件列表,得到各所述目标服务器关联的至少一个待下载文件列表,并调用所述目标服务器从所述待下载文件列表匹配的所述第一客户端中下载目标文件。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述文件下载方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述文件下载方法。
本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述文件下载方法。
本发明提供的文件下载方法、装置、设备、介质和程序产品,通过在接收到至少一个第二客户端发送的文件下载请求的情况下,统计出各第一客户端匹配的待下载文件列表;按照待下载文件列表的待下载文件总量从大到小的顺序进行排序,得到列表优先级队列;遍历处于空闲状态的目标服务器,并根据列表优先级队列依次为遍历到的目标服务器分配待下载文件列表,得到各目标服务器关联的至少一个待下载文件列表,并调用目标服务器从待下载文件列表匹配的第一客户端中下载目标文件,由此通过先将待下载文件列表的待下载文件总量从大到小的顺序进行排序,得到列表优先级队列,再按次序进行分配,实现了提高服务器负载均衡,进而提高文件下载效率。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的文件下载方法的流程示意图之一;
图2是本发明提供的文件下载方法的流程示意图之二;
图3是本发明提供的文件下载方法的流程示意图之三;
图4是本发明提供的文件下载装置的结构示意图;
图5是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,对于一数据库***,用户在办理某项业务时可以通过第一客户端登记用户的业务数据,第一客户端会对业务数据进行打包整理,生成该用户的业务文件。例如,用户在办理保险业务时,可以通过开通此保险业务的银行代理点通过该录音录像等技术手段采集用户的保险业务数据。
在实际应用中,为了确保业务文件中的业务数据信息的真实性及有效性,负责该用户办理业务的第二客户端会对第一客户端采集的业务文件进行复核,因此该数据库***中的任务调度中心单元可通过调度服务器先从第一客户端中将该业务文件下载,再将该业务文件反馈至第二客户端。
由于业务文件中包括影像数据,因此单个业务文件的数据量很大,导致服务器下载业务文件的处理时长较长,因此会通过配置多个服务器进行文件下载,然而现有方案中,采用采用分别指定多台服务器依次去固定指定的银行网点代理客户端中进行文件下载,然而由于服务器与各客户端之间的数据交易量及网络宽带之间存在差异性,导致服务器负载分配不均,造成部分文件下载积累。本发明提供了一种文件下载方法,通过动态均衡分配服务器负载的方式提高文件下载效率。
其中,本发明提供的文件下载方法应用于数据库***中的任务调度中心单元。任务调度中心单元可用于监测数据库***中的若干个第一客户端、若干个第二客户端发送的任务请求,在监测到任何一个第一客户端、第二客户端发送的任务请求时,任务调度中心单元通过对任务请求进行解析,即可得到任务请求匹配的客户端,并从数据库***中的若干个服务器中调用至少一个服务器与相应的客户端执行该任务请求。
需要说明的是,本发明提供的数据库***为一个具有数据采集及存储功能的***,例如银行数据库***、商超数据库***等。此外,本发明中的数据库***中的任务调度中心单元可以为一个独立于客户端、服务器的终端,还可以为数据库***中的具备请求解析及服务器调度功能的客户端及服务器,对此不作限制。
下面结合图1-图3描述本发明的一种文件下载方法。
图1为本发明提供的文件下载方法的流程示意图之一,如图1所示,该方法包括:
步骤100,在接收到至少一个第二客户端发送的文件下载请求的情况下,统计出各第一客户端匹配的待下载文件列表,其中,所述第一客户端为采集文件数据的客户端,所述第二客户端为复核文件数据的客户端;
该步骤中,为了避免频繁调用服务器从第一客户端中下载文件,导致服务器长期占用空闲资源从而影响数据库***的业务处理效率。本发明中各第一客户端在采集并存储各第二客户端关联的目标文件时,可以对各第二客户端关联的目标文件进行计数标识,即第一客户端在采集并存储各第一客户端关联的目标文件时,对采集的目标文件进行累加计数,并根据累加后的数值对各目标文件进行文件次序标识。当累加后的数值达到设定值时,第一客户端发送通知消息至第二客户端,第二客户端发送文件下载请求。此外本发明各第一客户端还可以周期性向各第二客户端汇报各周期采集的目标文件数量,第二客户端对第一客户端汇报的目标文集数量进行汇总,当第二客户端汇总的数量达到设定数值时,第二客户端发送文件下载请求。
具体地,在接收到至少一个第二客户端发送的文件下载请求的情况下,对各文件下载请求进行解析,得到各文件下载请求携带的文件标识;根据文件标识统计出各第一客户端匹配的待下载文件列表。
其中,文件标识指代为各个文件的编号标识,编号标识由第一客户端标识及文件次序标识组成。
该步骤中,在得到各文件下载请求携带的文件标识后,先对第一客户端标识相同的文件标识进行汇总,得到各第一客户端关联的文件标识,之后再根据文件标识中的文件次序标识统计出各第一客户端匹配的待下载文件列表。
步骤200,按照所述待下载文件列表的待下载文件总量从大到小的顺序进行排序,得到列表优先级队列;
该步骤中,待下载文件总量可以根据各待下载列表中的待下载文件数量确定。例如在一应用场景中,对文件下载请求进行解析统计后得到一共有七个第一客户端关联的待下载文件列表,分别为(1,1000)、(2,500)、(3,100)、(4,200)、(5,2000)、(6,800)、(7,4000)。其中,前一位数代表各第一客户端的编号,后一位数代表各第一客户端的文件数量。本发明中先对七个待下载文件列表按照从大到小的顺序进行排序,得到列表优先级队列:(7,4000)、(5,2000)、(1,1000)、(6,800)、(2,500)、(4,200)、(3,100)。
此外,由于各服务器与各客户端之间的网络宽带之间存在差异性,因此为了避免由于服务器与各客户端之间的网络宽带差异导致部分文件下载积累,待下载文件总量可以根据各待下载列表中的待下载文件大小确定。
步骤300,遍历处于空闲状态的目标服务器,并根据所述列表优先级队列依次为遍历到的所述目标服务器分配待下载文件列表,得到各所述目标服务器关联的至少一个待下载文件列表,并调用所述目标服务器从所述待下载文件列表匹配的所述第一客户端中下载目标文件。
该步骤中,列表优先级队列是用于确定各待下载文件列表分配的优先次序。在根据列表优先级队列中的优先次序先依次将处于前几位的待下载文件列表依次分配给各目标服务器,之后再根据各目标服务器的负载情况继续分配处于后几位的待下载文件列表,由此保证各目标服务器的负载均衡。
具体地,遍历各服务器的负载状态,并在服务器的负载小于预设负载的情况下,将服务器标识为处于空闲状态的目标服务器;根据列表优先级队列依次为遍历到的目标服务器分配一个待下载文件列表;遍历各目标服务器的负载状态,确定负载最小的目标服务器,并根据列表优先级队列为目标服务器分配一个待下载文件列表;返回执行遍历各目标服务器的负载状态,继续执行确定负载最小的目标服务器,并根据列表优先级队列为目标服务器分配一个待下载文件列表,直至待下载文件列表分配完毕。
为了便于理解,对此举例说明,如列表优先级队列为(7,4000)、(5,2000)、(1,1000)、(6,800)、(2,500)、(4,200)、(3,100),目前目标服务器为服务器A、服务器B、服务器C。则先执行第一轮遍历,将(7,4000)、(5,2000)、(1,1000)依次分配给服务器A、服务器B、服务器C,此时服务器C的待下载文件总量最少,也即负载最小。接着执行第二轮遍历,将(6,800)分配给服务器C,服务器C的下载列表更新为[(1,1000)、(6,800)],此时服务器C的待下载文件总量仍为最少。继续执行第三轮遍历,将(2,500)分配给服务器C,服务器C的下载列表更新为[(1,1000)、(6,800)、(2,500)],此时服务器B的待下载文件总量最少。继续执行第四轮遍历,将(4,200)分配给服务器B,服务器B的下载列表更新为[(5,2000),(4,200)],此时服务器B的待下载文件总量最少。继续执行第五轮遍历,将(3,100)分配给服务器B,服务器B的下载列表更新为[(5,2000),(4,200)、(3,100)],由此分配完成,而服务器A、服务器B、服务器C的待下载文件总量依次为4000、2300、2300,最大程度达到待下载文件负载均衡。
其中,本发明中预设负载与文件下载请求的文件下载时间限制及第一客户端与服务器之间的文件下载通道的数据传输速度相关,也即预设负载是一个灵活变动的数值,由此通过根据文件下载时间限制及数据传输速度实时计算出当前第一客户端的预设负载,保证了服务器可以该文件下载时间限制下将下载请求对应的目标文件下载完,达到保障时效性,进而提高了文件下载效率。
进一步地,在根据列表优先级队列依次为遍历到的目标服务器分配待下载文件列表之前,还可先根据各目标服务器的负载大小进行从小到大排列,得到服务器分配优先级列表,之后根据列表优先级队列与服务器分配优先级列表对待下载文件列表进行分配,使得各服务器的负载均衡。
进一步地,在另一实施例中,调用目标服务器从待下载文件列表匹配的第一客户端中下载目标文件之后,还包括:
根据各第二客户端发送的文件下载请求携带的文件标识对至少一个目标文件进行汇总,得到各第二客户端匹配的目标文件列表,并将各目标文件列表中关联的目标文件反馈至各所述第二客户端。
本发明提供的文件下载方法,通过在接收到至少一个第二客户端发送的文件下载请求的情况下,统计出各第一客户端匹配的待下载文件列表;按照待下载文件列表的待下载文件总量从大到小的顺序进行排序,得到列表优先级队列;遍历处于空闲状态的目标服务器,并根据列表优先级队列依次为遍历到的目标服务器分配待下载文件列表,得到各目标服务器关联的至少一个待下载文件列表,并调用目标服务器从待下载文件列表匹配的所述第一客户端中下载目标文件。由此通过根据列表优先级队列进行待下载文件列表均衡分配,实现了提高服务器负载均衡,进而提高文件下载效率。
在另一实施例中,参考图2,图2为本发明提供的文件下载方法的流程示意图之二,如图2所示:所述调用所述目标服务器从所述待下载文件列表匹配的所述第一客户端中下载目标文件之后,还包括:
步骤4011,周期性遍历各所述目标服务器待下载的目标文件大小及各所述目标服务器的文件下载通道的数据传输速度;
该步骤中,周期间隔可以根据服务器执行文件下载任务期间后续处于等待队列中的任务线程数确定。例如根据预设的任务线程数-周期间隔的隐射表确定周期间隔,换句话说,本发明中的各周期的周期间隔是根据等待队列中的任务线程数灵活变动的。
步骤4012,根据所述数据传输速度及所述目标文件大小计算出各所述目标服务器的下载时长,并根据所述下载时长调整所述目标服务器关联的至少一个待下载文件列表。
该步骤中,以一个周期进行解释说明,在计算出下载时长后,根据下载时长从大到小对目标服务器进行排序编号,得到第一组排序名次。接着遍历各目标服务器中的待下载文件列表数量,并按照待下载文件列表数量从大到小对各目标服务器进行排序编号,得到第二组排序名次。计算各目标服务器的第一组名次与第二组名次之间的名次之和,确定名次之和最小的第一目标服务器,及名次之和最大的第二目标服务器,并从名次之和最大的第二目标服务器关联的待下载文件列表中选取一个待下载文件列表重新关联至第一目标服务器。
本发明提供的文件下载方法,通过周期性遍历各目标服务器待下载的目标文件大小及各目标服务器的文件下载通道的数据传输速度;根据数据传输速度及目标文件大小计算出各目标服务器的下载时长,并根据下载时长调整目标服务器关联的至少一个待下载文件列表,由此通过周期性遍历灵活调整待下载文件列表的分配情况,实现了提高服务器负载均衡,进而提高文件下载效率。
在另一实施例中,参考图3,图3为本发明提供的文件下载方法的流程示意图之二,如图3所示:所述调用所述目标服务器从所述待下载文件列表匹配的所述第一客户端中下载目标文件之后,还包括:
步骤4021,周期性遍历除所述目标服务器之外的各服务器的负载状态,并在所述服务器的负载小于预设负载的情况下,将所述服务器标识为处于空闲状态的备选服务器;
该步骤中,周期间隔可以根据服务器执行文件下载任务期间后续处于等待队列中的任务线程数确定。例如根据预设的任务线程数-周期间隔的隐射表确定周期间隔,换句话说,本发明中的各周期的周期间隔是根据等待队列中的任务线程数灵活变动的。
在目标服务器执行文件下载任务期间,数据库***中可能存在部分业务线程执行完毕或即将执行完毕的服务器,因此本发明中通过周期性遍历方式增加目标服务器数量,进而减缓各目标服务器的负载,进而提高文件下载速度。
步骤4022,计算出各所述目标服务器的下载时长,并在所述目标服务器的下载时长超出预设时长的情况下,从所述目标服务器关联的至少一个待下载文件列表中选取出至少一个目标待下载文件列表,并调用所述备选服务器从所述目标待下载文件列表匹配的所述第一客户端中下载目标文件。
该步骤中,下载时长根据目标服务器与第二客户端之间的文件下载通道的数据传输速度及目标服务器的待下载文件列表的目标文件大小计算出得到的。
进一步地,在目标服务器的下载时长超出预设时长的情况下,还可以根据目标服务器当前处于等待队列中的任务线程数确定从目标服务器关联的至少一个待下载文件列表中选取的目标待下载文件列表调整数量,由此提高数据库***的任务处理效率。
本发明提供的文件下载方法,通过周期性遍历灵活调整待下载文件列表的分配情况,实现了提高服务器负载均衡,进而提高文件下载效率。
下面对本发明提供的文件下载装置进行描述,下文描述的文件下载装置与上文描述的文件下载方法可相互对应参照。
参考图4,图4是本发明提供的文件下载装置的结构示意图,如图4所示,所述文件下载装置包括:统计单元410,用于在接收到至少一个第二客户端发送的文件下载请求的情况下,统计出各第一客户端匹配的待下载文件列表;排序单元420,用于按照所述待下载文件列表的待下载文件总量从大到小的顺序进行排序,得到列表优先级队列,其中,所述第一客户端为采集文件数据的客户端,所述第二客户端为复核文件数据的客户端;分配单元430,用于遍历处于空闲状态的目标服务器,并根据所述列表优先级队列依次为遍历到的所述目标服务器分配待下载文件列表,得到各所述目标服务器关联的至少一个待下载文件列表,并调用所述目标服务器从所述待下载文件列表匹配的所述第一客户端中下载目标文件。
进一步地,所述分配单元430,还用于遍历各所述服务器的负载状态,并在所述服务器的负载小于预设负载的情况下,将所述服务器标识为处于空闲状态的目标服务器;根据所述列表优先级队列依次为遍历到的所述目标服务器分配一个待下载文件列表;遍历各所述目标服务器的负载状态,确定负载最小的目标服务器,并根据所述列表优先级队列为所述目标服务器分配一个待下载文件列表;返回执行所述遍历各所述目标服务器的负载状态,继续执行所述确定负载最小的目标服务器,并根据所述列表优先级队列为所述目标服务器分配一个待下载文件列表,直至所述待下载文件列表分配完毕。
进一步地,所述分配单元430,还用于周期性遍历各所述目标服务器待下载的目标文件大小及各所述目标服务器的文件下载通道的数据传输速度;根据所述数据传输速度及所述目标文件大小计算出各所述目标服务器的下载时长,并根据所述下载时长调整所述目标服务器关联的至少一个待下载文件列表。
进一步地,所述分配单元430,还用于周期性遍历除所述目标服务器之外的各服务器的负载状态,并在所述服务器的负载小于预设负载的情况下,将所述服务器标识为处于空闲状态的备选服务器;计算出各所述目标服务器的下载时长,并在所述目标服务器的下载时长超出预设时长的情况下,从所述目标服务器关联的至少一个待下载文件列表中选取出至少一个目标待下载文件列表,并调用所述备选服务器从所述目标待下载文件列表匹配的所述第一客户端中下载目标文件。
进一步地,所述统计单元410,还用于在接收到至少一个所述第二客户端发送的文件下载请求的情况下,对各所述文件下载请求进行解析,得到各所述文件下载请求携带的文件标识;根据所述文件标识统计出各所述第一客户端匹配的待下载文件列表。
进一步地,所述分配单元430,还用于根据各所述第二客户端发送的文件下载请求携带的文件标识对至少一个目标文件进行汇总,得到各所述第二客户端匹配的目标文件列表,并将各所述目标文件列表中关联的目标文件反馈至各所述第二客户端。
根据本发明提出的文件下载装置,通过在接收到至少一个第二客户端发送的文件下载请求的情况下,统计出各第一客户端匹配的待下载文件列表;按照待下载文件列表的待下载文件总量从大到小的顺序进行排序,得到列表优先级队列;遍历处于空闲状态的目标服务器,并根据列表优先级队列依次为遍历到的目标服务器分配待下载文件列表,得到各目标服务器关联的至少一个待下载文件列表,并调用目标服务器从待下载文件列表匹配的所述第一客户端中下载目标文件。由此通过根据列表优先级队列进行待下载文件列表均衡分配,实现了提高服务器负载均衡,进而提高文件下载效率。
图5示例了一种电子设备的实体结构示意图,如图5所示,该电子设备可以包括:处理器(processor)510、通信接口(Communications Interface)520、存储器(memory)530和通信总线540,其中,处理器510,通信接口520,存储器530通过通信总线540完成相互间的通信。处理器510可以调用存储器530中的逻辑指令,以执行文件下载方法,该方法包括:在接收到至少一个第二客户端发送的文件下载请求的情况下,统计出各第一客户端匹配的待下载文件列表,其中,所述第一客户端为采集文件数据的客户端,所述第二客户端为复核文件数据的客户端;按照所述待下载文件列表的待下载文件总量从大到小的顺序进行排序,得到列表优先级队列;遍历处于空闲状态的目标服务器,并根据所述列表优先级队列依次为遍历到的所述目标服务器分配待下载文件列表,得到各所述目标服务器关联的至少一个待下载文件列表,并调用所述目标服务器从所述待下载文件列表匹配的所述第一客户端中下载目标文件。
此外,上述的存储器530中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的文件下载方法,该方法包括:在接收到至少一个第二客户端发送的文件下载请求的情况下,统计出各第一客户端匹配的待下载文件列表,其中,所述第一客户端为采集文件数据的客户端,所述第二客户端为复核文件数据的客户端;按照所述待下载文件列表的待下载文件总量从大到小的顺序进行排序,得到列表优先级队列;遍历处于空闲状态的目标服务器,并根据所述列表优先级队列依次为遍历到的所述目标服务器分配待下载文件列表,得到各所述目标服务器关联的至少一个待下载文件列表,并调用所述目标服务器从所述待下载文件列表匹配的所述第一客户端中下载目标文件。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的文件下载方法,该方法包括:在接收到至少一个第二客户端发送的文件下载请求的情况下,统计出各第一客户端匹配的待下载文件列表,其中,所述第一客户端为采集文件数据的客户端,所述第二客户端为复核文件数据的客户端;按照所述待下载文件列表的待下载文件总量从大到小的顺序进行排序,得到列表优先级队列;遍历处于空闲状态的目标服务器,并根据所述列表优先级队列依次为遍历到的所述目标服务器分配待下载文件列表,得到各所述目标服务器关联的至少一个待下载文件列表,并调用所述目标服务器从所述待下载文件列表匹配的所述第一客户端中下载目标文件。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (9)
1.一种文件下载方法,其特征在于,包括:
在接收到至少一个第二客户端发送的文件下载请求的情况下,统计出各第一客户端匹配的待下载文件列表,其中,所述第一客户端为采集文件数据的客户端,所述第二客户端为复核文件数据的客户端;
按照所述待下载文件列表的待下载文件总量从大到小的顺序进行排序,得到列表优先级队列;
遍历各服务器的负载状态,并在所述服务器的负载小于预设负载的情况下,将所述服务器标识为处于空闲状态的目标服务器;
根据所述列表优先级队列依次为遍历到的所述目标服务器分配一个待下载文件列表;
遍历各所述目标服务器的负载状态,确定负载最小的目标服务器,并根据所述列表优先级队列为所述目标服务器分配一个待下载文件列表;
返回执行所述遍历各所述目标服务器的负载状态,继续执行所述确定负载最小的目标服务器,并根据所述列表优先级队列为所述目标服务器分配一个待下载文件列表,直至所述待下载文件列表分配完毕,并调用所述目标服务器从所述待下载文件列表匹配的所述第一客户端中下载目标文件。
2.根据权利要求1所述的文件下载方法,其特征在于,所述调用所述目标服务器从所述待下载文件列表匹配的所述第一客户端中下载目标文件之后,还包括:
周期性遍历各所述目标服务器待下载的目标文件大小及各所述目标服务器的文件下载通道的数据传输速度;
根据所述数据传输速度及所述目标文件大小计算出各所述目标服务器的下载时长,并根据所述下载时长调整所述目标服务器关联的至少一个待下载文件列表。
3.根据权利要求1所述的文件下载方法,其特征在于,所述调用所述目标服务器从所述待下载文件列表匹配的所述第一客户端中下载目标文件之后,还包括:
周期性遍历除所述目标服务器之外的各服务器的负载状态,并在所述服务器的负载小于预设负载的情况下,将所述服务器标识为处于空闲状态的备选服务器;
计算出各所述目标服务器的下载时长,并在所述目标服务器的下载时长超出预设时长的情况下,从所述目标服务器关联的至少一个待下载文件列表中选取出至少一个目标待下载文件列表,并调用所述备选服务器从所述目标待下载文件列表匹配的所述第一客户端中下载目标文件。
4.根据权利要求1所述的文件下载方法,其特征在于,所述在接收到至少一个所述第二客户端发送的文件下载请求的情况下,统计出各所述第一客户端匹配的待下载文件列表,具体包括:
在接收到至少一个所述第二客户端发送的文件下载请求的情况下,对各所述文件下载请求进行解析,得到各所述文件下载请求携带的文件标识;
根据所述文件标识统计出各所述第一客户端匹配的待下载文件列表。
5.根据权利要求1至4任一项所述的文件下载方法,其特征在于,所述调用所述目标服务器从所述待下载文件列表匹配的所述第一客户端中下载目标文件之后,还包括:
根据各所述第二客户端发送的文件下载请求携带的文件标识对至少一个目标文件进行汇总,得到各所述第二客户端匹配的目标文件列表,并将各所述目标文件列表中关联的目标文件反馈至各所述第二客户端。
6.一种文件下载装置,其特征在于,包括:
统计单元,用于在接收到至少一个第二客户端发送的文件下载请求的情况下,统计出各第一客户端匹配的待下载文件列表;
排序单元,用于按照所述待下载文件列表的待下载文件总量从大到小的顺序进行排序,得到列表优先级队列;
分配单元,用于遍历各服务器的负载状态,并在所述服务器的负载小于预设负载的情况下,将所述服务器标识为处于空闲状态的目标服务器;根据所述列表优先级队列依次为遍历到的所述目标服务器分配一个待下载文件列表;遍历各所述目标服务器的负载状态,确定负载最小的目标服务器,并根据所述列表优先级队列为所述目标服务器分配一个待下载文件列表;返回执行所述遍历各所述目标服务器的负载状态,继续执行所述确定负载最小的目标服务器,并根据所述列表优先级队列为所述目标服务器分配一个待下载文件列表,直至所述待下载文件列表分配完毕,并调用所述目标服务器从所述待下载文件列表匹配的所述第一客户端中下载目标文件。
7.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至5任一项所述文件下载方法。
8.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述文件下载方法。
9.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述文件下载方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210609264.1A CN115086299B (zh) | 2022-05-31 | 2022-05-31 | 文件下载方法、装置、设备、介质和程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210609264.1A CN115086299B (zh) | 2022-05-31 | 2022-05-31 | 文件下载方法、装置、设备、介质和程序产品 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115086299A CN115086299A (zh) | 2022-09-20 |
CN115086299B true CN115086299B (zh) | 2024-04-09 |
Family
ID=83248908
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210609264.1A Active CN115086299B (zh) | 2022-05-31 | 2022-05-31 | 文件下载方法、装置、设备、介质和程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115086299B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116955049A (zh) * | 2023-07-27 | 2023-10-27 | 山东溯源安全科技有限公司 | 一种检测顺序确定的方法、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112395034A (zh) * | 2020-11-23 | 2021-02-23 | 北京奇艺世纪科技有限公司 | 页面显示方法、装置、电子设备和存储介质 |
CN114265679A (zh) * | 2021-12-24 | 2022-04-01 | 深圳前海微众银行股份有限公司 | 数据处理方法、装置和服务器 |
CN114422509A (zh) * | 2022-04-01 | 2022-04-29 | 天津联想协同科技有限公司 | 文件自动备份方法、装置、网盘及存储介质 |
-
2022
- 2022-05-31 CN CN202210609264.1A patent/CN115086299B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112395034A (zh) * | 2020-11-23 | 2021-02-23 | 北京奇艺世纪科技有限公司 | 页面显示方法、装置、电子设备和存储介质 |
CN114265679A (zh) * | 2021-12-24 | 2022-04-01 | 深圳前海微众银行股份有限公司 | 数据处理方法、装置和服务器 |
CN114422509A (zh) * | 2022-04-01 | 2022-04-29 | 天津联想协同科技有限公司 | 文件自动备份方法、装置、网盘及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115086299A (zh) | 2022-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108268372B (zh) | Mock测试处理方法、装置、存储介质和计算机设备 | |
US11102286B2 (en) | Bandwidth scheduling method and device for cache server | |
CN106953940B (zh) | Dns服务器及配置加载方法、网络***、域名解析方法及*** | |
CN109710511B (zh) | Ab测试方法、装置、服务器及存储介质 | |
CN109246229A (zh) | 一种分发资源获取请求的方法和装置 | |
CN105045871B (zh) | 数据聚合查询方法及装置 | |
CN109981702B (zh) | 一种文件存储方法及*** | |
CN111858055B (zh) | 任务处理方法、服务器及存储介质 | |
CN107105013B (zh) | 文件的处理方法、服务器、终端和*** | |
CN115086299B (zh) | 文件下载方法、装置、设备、介质和程序产品 | |
CN110460879B (zh) | 一种视频请求调度方法、装置、服务器及存储介质 | |
US11201824B2 (en) | Method, electronic device and computer program product of load balancing for resource usage management | |
CN114185763A (zh) | 动态分配方法、装置、存储介质及电子设备 | |
CN115239450A (zh) | 财务数据处理方法、装置、计算机设备及存储介质 | |
CN108377268B (zh) | 一种调整任务优先级的方法与*** | |
CN105872082B (zh) | 基于容器集群负载均衡算法的细粒度资源响应*** | |
CN116760655B (zh) | Sd-wan应用中提供cpe最优接入的pop点方法 | |
CN116367102B (zh) | 自动切换短信路由的方法及装置 | |
CN113010310A (zh) | 作业数据的处理方法、装置和服务器 | |
US11216352B2 (en) | Method for automatically analyzing bottleneck in real time and an apparatus for performing the method | |
CN109462510B (zh) | 一种cdn节点质量评估的方法及装置 | |
CN112822306B (zh) | 代理ip动态管理方法、设备及计算机可读存储介质 | |
CN110222084B (zh) | 热点设备监控信息的上报方法及装置、存储介质、终端 | |
CN108021597A (zh) | 一种并行计数器、服务器和一种计数方法 | |
US8443104B2 (en) | Routing engine with filtering capabilitiess |
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 |