CN112148683A - 文件采集方法和装置 - Google Patents
文件采集方法和装置 Download PDFInfo
- Publication number
- CN112148683A CN112148683A CN201910558995.6A CN201910558995A CN112148683A CN 112148683 A CN112148683 A CN 112148683A CN 201910558995 A CN201910558995 A CN 201910558995A CN 112148683 A CN112148683 A CN 112148683A
- Authority
- CN
- China
- Prior art keywords
- acquisition
- file
- queue
- request
- collection
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/14—Details of searching files based on file metadata
- G06F16/148—File search processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
- G06F9/5088—Techniques for rebalancing the load in a distributed system involving task migration
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Library & Information Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请实施例提供了文件采集方法和装置,该方法包括首先获取来自服务器的文件采集请求;然后根据采集队列的优先级调配所述文件采集请求,以使所述采集队列根据所述文件采集请求执行采集文件的处理在获取来自服务器的文件采集请求之后,可以根据采集队列的优先级调配所述文件采集请求,以使所述采集队列根据所述文件采集请求执行采集文件的处理。这样,便可以根据采集队列的状态,分配文件采集请求,并在文件采集请求为多个时,实现均匀分配处理,达到负载均衡。
Description
技术领域
本申请涉及信息采集技术领域,尤其涉及一种文件采集方法和装置。
背景技术
现代社会各单位和企业越来越注重信息化的建设,信息系统成为企业、事业单位日常运作中不可或缺的重要组成部分。为了保证信息采集的安全性、完整性和时效性,往往需要将采集任务部署在两组主机中,并采用竞争模式保障文件采集的连续性,但是这种方式会由于文件量的大小导致主机资源的浪费或主机性能不稳定,进而带来十分严重的业务风险。
发明内容
本申请实施例提供了一种文件采集方法和装置,可以根据采集队列的状态,分配文件采集请求,并在文件采集请求为多个时,实现均匀分配处理,达到负载均衡。
第一方面,本申请实施例提供了一种文件采集方法,执行在客户端上,包括:
获取来自服务器的文件采集请求,所述文件采集请求为一个或多个,当所述文件采集请求为多个时,多个所述文件采集请求包括相同的预设采集参数;
根据采集队列的优先级调配所述文件采集请求,以使所述采集队列根据所述文件采集请求执行采集文件的处理;
其中,所述采集队列具有以下由高到低的优先级顺序:
闲忙状态、空闲时长、最大采集文件数、线程数。
其中在一种可能的实现方式中,所述所述获取文件采集请求之前,还包括:
创建多个采集队列,并通过所述多个采集队列向服务器发送连接请求,以使所述服务器根据所述连接请求建立与所述多个采集队列之间的通信。
其中在一种可能的实现方式中,所述根据采集队列的优先级调配所述文件采集请求,以使所述采集队列根据所述文件采集请求执行采集文件的处理之后,还包括:
监听所述采集队列是否完成文件采集任务;以及,
在监听结果为所述采集队列未完成所述文件采集任务时,则继续执行所述采集文件的处理。
其中在一种可能的实现方式中,所述监听所述采集队列是否完成文件采集任务之后,还包括:
向所述服务器返回所述监听结果。
其中在一种可能的实现方式中,所述采集队列包括基于socket连接的队列。
第二方面,本申请实施例提供了一种文件采集方法,执行在服务器上,包括:
接收来自多个客户端的对应第一采集队列;
根据所述第一采集队列,判断对应所述客户端是否为新的客户端;
根据判断结果执行创建与所述第一采集队列相对应的第二采集队列或向所述第一采集队列发送文件采集请求的处理;以及,
接收来自所述客户端对于文件采集请求的回执。
其中在一种可能的实现方式中,所述根据判断结果执行创建与所述第一采集队列相对应的第二采集队列或向所述第一采集队列发送文件采集请求的处理包括:
根据所述第一采集队列,发现有新的客户端时,则创建与所述客户端的第一采集队列相对应的第二采集队列,并通过所述第二采集队列发送所述文件采集请求至所述第一采集队列。
其中在一种可能的实现方式中,所述根据判断结果执行创建与所述第一采集队列相对应的第二采集队列或向所述第一采集队列发送文件采集请求的处理包括:
根据所述第一采集队列,未发现有新的客户端时,则向所述第一采集队列对应发送所述文件采集请求。
第三方面,本申请还提供了一种文件采集装置,所述装置包括:
第一获取模块,用于获取来自服务器的文件采集请求,所述文件采集请求为一个或多个,当所述文件采集请求为多个时,多个所述文件采集请求包括相同的预设采集参数;
第一调配模块,与所述的第一获取模块相连接,用于根据采集队列的优先级调配所述文件采集请求;
第一执行模块,与所述的第一调配模块相连接,用于使所述采集队列根据所述文件采集请求执行采集文件的处理;
其中,所述采集队列具有以下由高到低的优先级顺序:
闲忙状态、空闲时长、最大采集文件数、线程数。
其中在一种可能的实现方式中,所述装置还包括创建模块,所述创建模块用于创建多个采集队列,并通过所述多个采集队列向服务器发送连接请求,以使所述服务器根据所述连接请求建立与所述多个采集队列之间的通信。
以上技术方案中,在获取来自服务器的文件采集请求之后,可以根据采集队列的优先级调配所述文件采集请求,以使所述采集队列根据所述文件采集请求执行采集文件的处理。这样,便可以根据采集队列的状态,分配文件采集请求,并在文件采集请求为多个时,实现均匀分配处理,达到负载均衡。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请文件采集方法的一实施例的流程图;
图2为本申请文件采集方法的另一实施例的流程图;
图3为本申请文件采集方法的再一实施例的流程图;
图4为本申请文件采集方法的一实施例的流程图;
图5为本申请文件采集方法的另一实施例的流程图;
图6为本申请文件采集装置的一实施例的连接结构示意图;
图7为本申请文件采集装置的另一实施例的连接结构示意图;
图8为本申请文件采集装置的再一实施例的连接结构示意图;
图9为本申请文件采集装置的再一实施例的连接结构示意图;
图10为本申请文件采集装置的一实施例的连接结构示意图;
图11为本申请文件采集装置的另一实施例的连接结构示意图;
图12为本申请计算机设备一个实施例的结构示意图。
具体实施方式
为了更好的理解本申请的技术方案,下面结合附图对本申请实施例进行详细描述。
应当明确,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
图1为本申请文件采集方法的一实施例的流程图,图1所示的方法执行在客户端上,如图1所示,上述方法包括:
S102:获取来自服务器的文件采集请求,所述文件采集请求为一个或多个,当所述文件采集请求为多个时,多个所述文件采集请求包括相同的预设采集参数。
具体地,上述预设采集参数可包括文件名和文件类型。其中,上述文件名包括文件主名和扩展名,例如G9401.DBF;上述文件类型包括text文件、HTML文件或者PDF格式的文件等;本申请的上述实施例中,当文件名或文件类型中的一个相同时,可视为具有相同预设采集参数的文件采集请求。
进一步地,本申请的文件采集请求可以具有不同的预设采集参数,基于预设采集参数对于文件采集请求进行分类,便可获取具有同一类型的文件采集请求;该同类型的文件采集请求中,文件采集请求的数量可以为一个,也可以为多个;将多个同类型的文件采集请求共同处理,可以提高文件采集效率,克服了现有技术中单个文件采集导致的效率低的问题。
进一步地,可通过正则表达式识别所述预设采集参数,以实现对文件采集请求进行分类的目的。
进一步地,本申请的上述文件采集请求在分类时,可基于文件名进行分类,也可基于文件类型进行分类,还可基于文件名和文件类型两者进行分类。
S104:根据采集队列的优先级调配所述文件采集请求,以使所述采集队列根据所述文件采集请求执行采集文件的处理。
具体地,本申请的上述采集队列包括基于socket连接的队列,上述socket连接可实现数据(即文件采集请求)的交换。在实际应用中,当一个socket连接建立之后,即说明采集进程开始工作,一个采集进程往往与一个采集队列相对应。
具体地,上述采集队列的优先级包括以下因素:闲忙状态、空闲时长、单进程最大采集文件数、单进程中线程数。
进一步地,可通过确定以上因素的顺序或者权重值来确定采集队列,实现最佳采集。例如,采集队列A的状态为空闲、空闲时长为5mins,单进程最大采集文件数为100个,进程中线程数量为10个;采集队列B的状态为空闲、空闲时长为4mins,单进程最大采集文件数为80个,进程中线程数量为15个;采集队列C的状态为忙碌、空闲时长为6mins,单进程最大采集文件数为120个,进程中线程数量为10个;这样,当根据由高到低的优先级顺序确定采集队列时,首先查询采集队列A、B、C的闲忙状态,可知只有A、B符合要求,再来查询A和B的空闲时长,因此选择采集队列A为执行文件采集的队列(5mins>4mins);在实际应用中,也可根据权重值来确定上述采集队列。
本申请的上述文件采集方法中,在获取来自服务器的文件采集请求之后,可以根据采集队列的优先级调配所述文件采集请求,以使所述采集队列根据所述文件采集请求执行采集文件的处理。这样,便可以根据采集队列的状态,分配文件采集请求,并在文件采集请求为多个时,实现均匀分配处理,达到负载均衡。
图2为本申请文件采集方法的另一实施例的流程图,如图2所示,本申请图1所示的S102之前,还包括:
S100:创建多个采集队列,并通过所述多个采集队列向服务器发送连接请求,以使所述服务器根据所述连接请求建立与所述多个采集队列之间的通信。
具体地,上述多个采集队列为与socket连接在客户端一侧相对应的socket连接,本申请实施例中,服务器需要先创建socket连接,才可实现与客户端之间的通信。
具体地,本申请图1所示的S104之后,还包括:
S106:监听所述采集队列是否完成文件采集任务。
S108:在监听结果为所述采集队列未完成所述文件采集任务时,则继续执行所述采集文件的处理。
具体地,请参阅图3所示,本申请图2所示的S106之后,还包括:
S110:向所述服务器返回所述监听结果。
进一步地,所述监听结果包括读事件,上述读事件包括当所述采集队列完成文件采集任务时,则记录采集结果。
进一步地,所述监听结果还包括写事件,上述写事件包括将所述采集结果返回至服务器。
进一步地,所述监听结果还包括异常事件,上述异常事件包括将未处理玩的文件采集请求重新压入采集队列。
图4为本申请文件采集方法一实施例的流程图,图4所示的方法执行在服务器上,如图4所示,上述方法包括:
S200:接收来自多个客户端的对应第一采集队列。
S202:根据所述第一采集队列,判断对应所述客户端是否为新的客户端。
S204:根据判断结果执行创建与所述第一采集队列相对应的第二采集队列或向所述第一采集队列发送文件采集请求的处理。
S206:接收来自所述客户端对于文件采集请求的回执。
同样,上述第一采集队列包括基于socket连接的队列,根据来自客户端的第一采集队列的数量,判断是否有足够的第二采集队列可实现与多个客户端之间的数据(即文件采集请求)交换。
具体地,请参阅图5,首先需要根据所述第一采集队列,判断是否有新的客户端;若是,则创建与所述客户端的第一采集队列相对应的第二采集队列,进而再发送所述文件采集请求至所述第一采集队列;否则当未发现有新的客户端时,则直接发送所述文件采集请求至所述第一采集队列。
进一步地,上述根据所述第一采集队列,判断是否发现有新的客户端可以包括以下两种方式:
(1)根据服务器中的第二采集队列与客户端中第一采集队列的数量判断是否有新的客户端连接,例如,服务器中第二采集队列的数量为2个,客户端中第一采集队列的数量为4个,则由于所述第二采集队列的数量(2个)小于所述第一采集队列的数量(4个),因此在服务器中需要额外创建两个第二采集队列,实现与客户端之间的通信。
(2)监听所述客户端是否有读事件,若有,则表示有新的客户端连接,则需创建新的第二采集队列实现与客户端之间的数据(即文件采集请求)交换。
其中,所述客户端的第一采集队列在接收到所述文件采集请求之后,将根据采集队列的优先级调配所述文件采集请求,以使所述采集队列根据所述文件采集请求执行采集文件的处理;
其中,所述采集队列具有以下由高到低的优先级顺序:
闲忙状态、空闲时长、最大采集文件数、线程数。
进一步地,可通过确定以上因素的顺序或者权重值来确定采集队列,实现最佳采集。例如,第一采集队列A的状态为空闲、空闲时长为5mins,单进程最大采集文件数为100个,进程中线程数量为10个;第一采集队列B的状态为空闲、空闲时长为4mins,单进程最大采集文件数为80个,进程中线程数量为15个;第一采集队列C的状态为忙碌、空闲时长为6mins,单进程最大采集文件数为120个,进程中线程数量为10个;这样,当根据由高到低的优先级顺序确定采集队列时,首先查询第一采集队列A、B、C的闲忙状态,可知只有A、B符合要求,再来查询A和B的空闲时长,因此选择第一采集队列A为执行文件采集的队列(5mins>4mins);在实际应用中,也可根据权重值来确定上述采集队列。
图6为本申请文件采集装置的一实施例的连接结构示意图,图6所示的文件采集装置为基于客户端的采集装置,所述装置包括第一获取模块11、第一调配模块12和第一执行模块13;
所述第一获取模块11用于获取来自服务器的文件采集请求,所述文件采集请求为一个或多个,当所述文件采集请求为多个时,多个所述文件采集请求包括相同的预设采集参数。
具体地,上述预设采集参数可包括文件名和文件类型。其中,上述文件名包括文件主名和扩展名,例如G9401.DBF;上述文件类型包括text文件、HTML文件或者PDF格式的文件等;本申请的上述实施例中,当文件名或文件类型中的一个相同时,可视为具有相同预设采集参数的文件采集请求。
进一步地,本申请的文件采集请求可以具有不同的预设采集参数,基于预设采集参数对于文件采集请求进行分类,便可获取具有同一类型的文件采集请求;该同类型的文件采集请求中,文件采集请求的数量可以为一个,也可以为多个;将多个同类型的文件采集请求共同处理,可以提高文件采集效率,克服了现有技术中单个文件采集导致的效率低的问题。
进一步地,可通过正则表达式识别所述预设采集参数,以实现对文件采集请求进行分类的目的。
进一步地,本申请的上述文件采集请求在分类时,可基于文件名进行分类,也可基于文件类型进行分类,还可基于文件名和文件类型两者进行分类。
所述第一调配模块12用于根据采集队列的优先级调配所述文件采集请求;
所述第一执行模块13用于使得所述采集队列根据所述文件采集请求执行采集文件的处理。
具体地,本申请的上述采集队列包括基于socket连接的队列,上述socket连接可实现数据(即文件采集请求)的交换。在实际应用中,当一个socket连接建立之后,即说明采集进程开始工作,一个采集进程往往与一个采集队列相对应。
具体地,上述采集队列的优先级包括以下因素:闲忙状态、空闲时长、单进程最大采集文件数、单进程中线程数。
进一步地,可通过确定以上因素的顺序或者权重值来确定采集队列,实现最佳采集。例如,采集队列A的状态为空闲、空闲时长为5mins,单进程最大采集文件数为100个,进程中线程数量为10个;采集队列B的状态为空闲、空闲时长为4mins,单进程最大采集文件数为80个,进程中线程数量为15个;采集队列C的状态为忙碌、空闲时长为6mins,单进程最大采集文件数为120个,进程中线程数量为10个;这样,当根据由高到低的优先级顺序确定采集队列时,首先查询采集队列A、B、C的闲忙状态,可知只有A、B符合要求,再来查询A和B的空闲时长,因此选择采集队列A为执行文件采集的队列(5mins>4mins);在实际应用中,也可根据权重值来确定上述采集队列。
本申请的上述文件采集装置中,在获取来自服务器的文件采集请求之后,可以根据采集队列的优先级调配所述文件采集请求,以使所述采集队列根据所述文件采集请求执行采集文件的处理。这样,便可以根据采集队列的状态,分配文件采集请求,并在文件采集请求为多个时,实现均匀分配处理,达到负载均衡。
图7为本申请文件采集装置另一实施例的连接结构示意图,如图7所示,本申请图6所示的装置还包括创建模块10;
所述创建模块10用于创建多个采集队列,并通过所述多个采集队列向服务器发送连接请求,以使所述服务器根据所述连接请求建立与所述多个采集队列之间的通信。
具体地,上述多个采集队列为与socket连接在客户端一侧相对应的socket连接,本申请实施例中,服务器需要先创建socket连接,才可实现与客户端之间的通信。
具体地,请参阅图8和图9,本申请的文件采集装置还包括监听模块14、第二执行模块15和回执模块16;
上述监听模块14用于监听所述采集队列是否完成文件采集任务;上述第二执行模块15用于在根据所述监听模块14的监听结果为所述采集队列未完成所述文件采集任务时,则继续执行所述采集文件的处理;
上述回执模块16用于向所述服务器返回所述监听结果。
进一步地,所述监听结果包括读事件,上述读事件包括当所述采集队列完成文件采集任务时,则记录采集结果。
进一步地,所述监听结果还包括写事件,上述写事件包括将所述采集结果返回至服务器。
进一步地,所述监听结果还包括异常事件,上述异常事件包括将未处理玩的文件采集请求重新压入采集队列。
图10为本申请文件采集装置的一实施例的连接结构示意图,上述装置为基于服务器的装置,包括第一接收模块21、第一判断模块22、第三执行模块23和第二接收模块24;
所述第一接收模块21用于接收来自多个客户端的对应第一采集队列。
所述第一判断模块22用于根据所述第一采集队列,判断对应所述客户端是否为新的客户端。
所述第三执行模块23用于根据所述第一判断模块22的判断结果执行创建与所述第一采集队列相对应的第二采集队列或向所述第一采集队列发送文件采集请求的处理。
所述第二接收模块24用于接收来自所述客户端对于文件采集请求的回执。
同样,上述第一采集队列包括基于socket连接的队列,根据来自客户端的第一采集队列的数量,判断是否有足够的第二采集队列可实现与多个客户端之间的数据(即文件采集请求)交换。
具体地,请参阅图11,本申请图10所示的第二执行模块15还包括第二创建单元25和第二发送单元26;
在所述第一判断模块22的判断结果为有新的客户端时,则所述第二创建单元25用于创建与所述客户端的第一采集队列相对应的第二采集队列,进而所述第二发送单元26再发送所述文件采集请求至所述第一采集队列;否则当所述第一判断模块22的判断结果为未发现有新的客户端时,则所述第二发送单元26直接发送所述文件采集请求至所述第一采集队列。
进一步地,所述第一判断模块22在根据所述第一采集队列,判断是否发现有新的客户端可以包括以下两种方式:
(1)根据服务器中的第二采集队列与客户端中第一采集队列的数量判断是否有新的客户端连接,例如,服务器中第二采集队列的数量为2个,客户端中第一采集队列的数量为4个,则由于所述第二采集队列的数量(2个)小于所述第一采集队列的数量(4个),因此在服务器中需要额外创建两个第二采集队列,实现与客户端之间的通信。
(2)监听所述客户端是否有读事件,若有,则表示有新的客户端连接,则需创建新的第二采集队列实现与客户端之间的数据(即文件采集请求)交换。
其中,所述客户端的第一采集队列在接收到所述文件采集请求之后,将根据采集队列的优先级调配所述文件采集请求,以使所述采集队列根据所述文件采集请求执行采集文件的处理;
其中,所述采集队列具有以下由高到低的优先级顺序:
闲忙状态、空闲时长、最大采集文件数、线程数。
进一步地,可通过确定以上因素的顺序或者权重值来确定采集队列,实现最佳采集。例如,第一采集队列A的状态为空闲、空闲时长为5mins,单进程最大采集文件数为100个,进程中线程数量为10个;第一采集队列B的状态为空闲、空闲时长为4mins,单进程最大采集文件数为80个,进程中线程数量为15个;第一采集队列C的状态为忙碌、空闲时长为6mins,单进程最大采集文件数为120个,进程中线程数量为10个;这样,当根据由高到低的优先级顺序确定采集队列时,首先查询第一采集队列A、B、C的闲忙状态,可知只有A、B符合要求,再来查询A和B的空闲时长,因此选择第一采集队列A为执行文件采集的队列(5mins>4mins);在实际应用中,也可根据权重值来确定上述采集队列。
图12为本申请计算机设备一个实施例的结构示意图,上述计算机设备可以包括至少一个处理器;以及与所述处理器通信连接的至少一个存储器;所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行上述文件采集方法,可以实现本申请实施例提供的文件采集方法。
其中,上述计算机设备可以为服务器,例如:云服务器,或者上述计算机设备也可以为计算机设备,例如:智能手机、智能手表、个人计算机(Personal Computer;以下简称:PC)、笔记本电脑或平板电脑等智能设备,本实施例对上述计算机设备的具体形态不作限定。
图12示出了适于用来实现本申请实施方式的示例性计算机设备52的框图。图12显示的计算机设备52仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图12所示,计算机设备52以通用计算设备的形式表现。计算机设备52的组件可以包括但不限于:一个或者多个处理器或者处理单元56,系统存储器78,连接不同系统组件(包括系统存储器78和处理单元56)的总线58。
总线58表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture;以下简称:ISA)总线,微通道体系结构(Micro Channel Architecture;以下简称:MAC)总线,增强型ISA总线、视频电子标准协会(Video Electronics StandardsAssociation;以下简称:VESA)局域总线以及外围组件互连(Peripheral ComponentInterconnection;以下简称:PCI)总线。
计算机设备52典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备52访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器78可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory;以下简称:RAM)70和/或高速缓存存储器72。计算机设备52可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统74可以用于读写不可移动的、非易失性磁介质(图12未显示,通常称为“硬盘驱动器”)。尽管图12中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如:光盘只读存储器(Compact Disc ReadOnly Memory;以下简称:CD-ROM)、数字多功能只读光盘(Digital Video Disc Read OnlyMemory;以下简称:DVD-ROM)或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线58相连。存储器78可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各实施例的功能。
具有一组(至少一个)程序模块82的程序/实用工具80,可以存储在例如存储器78中,这样的程序模块82包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块82通常执行本申请所描述的实施例中的功能和/或方法。
计算机设备52也可以与一个或多个外部设备54(例如键盘、指向设备、显示器64等)通信,还可与一个或者多个使得用户能与该计算机设备52交互的设备通信,和/或与使得该计算机设备52能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口62进行。并且,计算机设备52还可以通过网络适配器60与一个或者多个网络(例如局域网(Local Area Network;以下简称:LAN),广域网(Wide Area Network;以下简称:WAN)和/或公共网络,例如因特网)通信。如图12所示,网络适配器60通过总线58与计算机设备52的其它模块通信。应当明白,尽管图12中未示出,可以结合计算机设备52使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元56通过运行存储在系统存储器78中的程序,从而执行各种功能应用以及数据处理,例如实现本申请实施例提供的文件采集方法。
本申请实施例还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述文件采集方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (10)
1.一种文件采集方法,执行在客户端上,其特征在于,所述的方法包括:
获取来自服务器的文件采集请求,所述文件采集请求为一个或多个,当所述文件采集请求为多个时,多个所述文件采集请求包括相同的预设采集参数;
根据采集队列的优先级调配所述文件采集请求,以使所述采集队列根据所述文件采集请求执行采集文件的处理;
其中,所述采集队列具有以下由高到低的优先级顺序:
闲忙状态、空闲时长、最大采集文件数、线程数。
2.根据权利要求1所述的方法,其特征在于,所述获取文件采集请求之前,还包括:
创建多个采集队列,并通过所述多个采集队列向服务器发送连接请求,以使所述服务器根据所述连接请求建立与所述多个采集队列之间的通信。
3.根据权利要求1所述的方法,其特征在于,所述根据采集队列的优先级调配所述文件采集请求,以使所述采集队列根据所述文件采集请求执行采集文件的处理之后,还包括:
监听所述采集队列是否完成文件采集任务;以及,
在监听结果为所述采集队列未完成所述文件采集任务时,则继续执行所述采集文件的处理。
4.根据权利要求3所述的方法,其特征在于,所述监听所述采集队列是否完成文件采集任务之后,还包括:
向所述服务器返回所述监听结果。
5.根据权利要求1~4中任一项所述的方法,其特征在于,所述采集队列包括基于socket连接的队列。
6.一种文件采集方法,执行在服务器上,其特征在于,所述的方法包括:
接收来自多个客户端的对应第一采集队列;
根据所述第一采集队列,判断对应所述客户端是否为新的客户端;
根据判断结果执行创建与所述第一采集队列相对应的第二采集队列或向所述第一采集队列发送文件采集请求的处理;以及,
接收来自所述客户端对于文件采集请求的回执。
7.根据权利要求6所述的方法,其特征在于,所述根据判断结果执行创建与所述第一采集队列相对应的第二采集队列或向所述第一采集队列发送文件采集请求的处理包括:
根据所述第一采集队列,发现有新的客户端时,则创建与所述客户端的第一采集队列相对应的第二采集队列,并通过所述第二采集队列发送所述文件采集请求至所述第一采集队列。
8.根据权利要求6所述的方法,其特征在于,所述根据判断结果执行创建与所述第一采集队列相对应的第二采集队列或向所述第一采集队列发送文件采集请求的处理包括:
根据所述第一采集队列,未发现有新的客户端时,则向所述第一采集队列对应发送所述文件采集请求。
9.一种文件采集装置,其特征在于,所述装置包括:
第一获取模块,用于获取来自服务器的文件采集请求,所述文件采集请求为一个或多个,当所述文件采集请求为多个时,多个所述文件采集请求包括相同的预设采集参数;
第一调配模块,与所述的第一获取模块相连接,用于根据采集队列的优先级调配所述文件采集请求;
第一执行模块,与所述的第一调配模块相连接,用于使所述采集队列根据所述文件采集请求执行采集文件的处理;
其中,所述采集队列具有以下由高到低的优先级顺序:
闲忙状态、空闲时长、最大采集文件数、线程数。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括创建模块,所述创建模块用于创建多个采集队列,并通过所述多个采集队列向服务器发送连接请求,以使所述服务器根据所述连接请求建立与所述多个采集队列之间的通信。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910558995.6A CN112148683A (zh) | 2019-06-26 | 2019-06-26 | 文件采集方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910558995.6A CN112148683A (zh) | 2019-06-26 | 2019-06-26 | 文件采集方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112148683A true CN112148683A (zh) | 2020-12-29 |
Family
ID=73869659
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910558995.6A Pending CN112148683A (zh) | 2019-06-26 | 2019-06-26 | 文件采集方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112148683A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016187831A1 (zh) * | 2015-05-27 | 2016-12-01 | 华为技术有限公司 | 存取文件的方法、装置和存储系统 |
CN106888194A (zh) * | 2015-12-16 | 2017-06-23 | 国家电网公司 | 基于分布式调度的智能电网it资产安全监测系统 |
CN107613025A (zh) * | 2017-10-31 | 2018-01-19 | 武汉光迅科技股份有限公司 | 一种基于消息队列顺序回复的实现方法和装置 |
CN108241535A (zh) * | 2016-12-27 | 2018-07-03 | 阿里巴巴集团控股有限公司 | 资源管理的方法、装置及服务器设备 |
CN108268543A (zh) * | 2016-12-31 | 2018-07-10 | 中国移动通信集团江西有限公司 | 数据库采集方法和装置 |
-
2019
- 2019-06-26 CN CN201910558995.6A patent/CN112148683A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016187831A1 (zh) * | 2015-05-27 | 2016-12-01 | 华为技术有限公司 | 存取文件的方法、装置和存储系统 |
CN106888194A (zh) * | 2015-12-16 | 2017-06-23 | 国家电网公司 | 基于分布式调度的智能电网it资产安全监测系统 |
CN108241535A (zh) * | 2016-12-27 | 2018-07-03 | 阿里巴巴集团控股有限公司 | 资源管理的方法、装置及服务器设备 |
CN108268543A (zh) * | 2016-12-31 | 2018-07-10 | 中国移动通信集团江西有限公司 | 数据库采集方法和装置 |
CN107613025A (zh) * | 2017-10-31 | 2018-01-19 | 武汉光迅科技股份有限公司 | 一种基于消息队列顺序回复的实现方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108776934B (zh) | 分布式数据计算方法、装置、计算机设备及可读存储介质 | |
EP3796150B1 (en) | Storage volume creation method and apparatus, server, and storage medium | |
CN105787077B (zh) | 数据同步方法和装置 | |
US20130060834A1 (en) | Distributed messaging system connectivity and resource management | |
EP2414934B1 (en) | Priority-based management of system load level | |
CN104537076B (zh) | 一种文件读写方法及装置 | |
US10218656B2 (en) | Smart message delivery based on transaction processing status | |
CN110955640A (zh) | 跨系统数据文件的处理方法、装置、服务器和存储介质 | |
CN110781159B (zh) | Ceph目录文件信息读取方法、装置、服务器及存储介质 | |
CN110851276A (zh) | 一种业务请求处理方法、装置、服务器和存储介质 | |
CN108415765B (zh) | 任务调度方法、装置及智能终端 | |
CN114155026A (zh) | 一种资源分配方法、装置、服务器及存储介质 | |
CN117290083A (zh) | 资源调整方法、装置、计算设备集群及可读存储介质 | |
CN113449994A (zh) | 任务单的分配方法、装置、电子设备、介质和程序产品 | |
US20120047264A1 (en) | System and method to dynamically allocate electronic mailboxes | |
JP2014106728A (ja) | マルチテナント型サービスシステム、情報処理装置、制御方法、及びプログラム | |
US20200341642A1 (en) | Method and system for prioritizing critical data object storage during backup operations | |
CN113656359A (zh) | 三维模型的轻量化方法、装置、计算机设备及存储介质 | |
EP3734459B1 (en) | Method and system for prioritizing critical data object storage during backup operations | |
CN112148683A (zh) | 文件采集方法和装置 | |
CN115016890A (zh) | 虚拟机资源分配方法、装置、电子设备及存储介质 | |
CN113407339A (zh) | 资源请求反馈方法、装置、可读存储介质及电子设备 | |
CN112948141A (zh) | 一种基于消息中间件的数据处理方法、装置和系统 | |
CN113032369A (zh) | 一种数据迁移方法、装置及介质 | |
CN110908810A (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 |