CN107025129A - 一种数据处理方法以及装置 - Google Patents
一种数据处理方法以及装置 Download PDFInfo
- Publication number
- CN107025129A CN107025129A CN201610066909.6A CN201610066909A CN107025129A CN 107025129 A CN107025129 A CN 107025129A CN 201610066909 A CN201610066909 A CN 201610066909A CN 107025129 A CN107025129 A CN 107025129A
- Authority
- CN
- China
- Prior art keywords
- task
- storage
- execution
- execution status
- storage link
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 11
- 238000003860 storage Methods 0.000 claims abstract description 444
- 238000012545 processing Methods 0.000 claims abstract description 112
- 238000000034 method Methods 0.000 claims abstract description 20
- 238000012544 monitoring process Methods 0.000 claims description 27
- 238000013507 mapping Methods 0.000 claims description 16
- 230000005540 biological transmission Effects 0.000 claims description 4
- 230000008878 coupling Effects 0.000 abstract description 9
- 238000010168 coupling process Methods 0.000 abstract description 9
- 238000005859 coupling reaction Methods 0.000 abstract description 9
- 238000001914 filtration Methods 0.000 description 62
- 241000700605 Viruses Species 0.000 description 40
- 238000001514 detection method Methods 0.000 description 26
- 238000007726 management method Methods 0.000 description 15
- 238000012986 modification Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 5
- 230000002159 abnormal effect Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003612 virological effect Effects 0.000 description 1
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
-
- 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/033—Test or assess software
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Debugging And Monitoring (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明实施例公开了一种数据处理方法以及装置,其中方法包括:获取入库应用,并对所述入库应用对应的任务执行状态进行监控;根据所监控到的所述任务执行状态在多个入库环节任务中选择并执行至少一个入库环节任务,并获取所执行的所述至少一个入库环节任务对应的任务结果数据,并根据所述任务结果数据更新所述任务执行状态;当更新后的任务执行状态未满足最终合法条件时,继续根据所述更新后的任务执行状态在所述多个入库环节任务中选择并执行至少一个入库环节任务;当更新后的任务执行状态满足最终合法条件时,对所述入库应用进行合法上线处理。采用本发明,可降低入库检测***的耦合性,从而提高了可扩展性。
Description
技术领域
本发明涉及互联网技术领域,尤其涉及一种数据处理方法以及装置。
背景技术
随着互联网技术的发展,越来越多用户会一些合法平台下载各种应用程序,为了向用户提供更好、更安全的应用程序,每个应用程序在合法平台中上线之前都需要进行入库检测。
目前的入库检测模式主要为串行流程模式,串行流程模式最大的特点就是简单、快速。例如,基于串行流程模式对某应用程序进行入库检测时,可以先进行抓取服务,成功后即可进行病毒审核,若病毒审核成功则可以进入脏字过滤,若病毒审核失败则进入下线环节。由此可见,串行流程模式中的每个流程环节都与它的上一个环节和下一个环节有依赖关系,当流程关系复杂时(如一个流程环节与多个流程环节均有依赖关系时),若要在中间新增流程环节,则会非常困难,成本很高,可见串行流程模式的耦合性比较高,可扩展性比较差。
发明内容
本发明实施例提供一种数据处理方法以及装置,可降低入库检测***的耦合性,从而提高了可扩展性。
本发明实施例提供了一种数据处理方法,包括:
获取入库应用,并对所述入库应用对应的任务执行状态进行监控;所述入库应用对应有多个入库环节任务;
根据所监控到的所述任务执行状态在所述多个入库环节任务中选择并执行至少一个入库环节任务,并获取所执行的所述至少一个入库环节任务对应的任务结果数据,并根据所述任务结果数据更新所述任务执行状态;
当更新后的任务执行状态未满足最终合法条件时,继续根据所述更新后的任务执行状态在所述多个入库环节任务中选择并执行至少一个入库环节任务;
当更新后的任务执行状态满足最终合法条件时,对所述入库应用进行合法上线处理。
相应地,本发明实施例还提供了一种数据处理装置,包括:
获取监控模块,用于获取入库应用,并对所述入库应用对应的任务执行状态进行监控;所述入库应用对应有多个入库环节任务;
执行更新模块,用于根据所监控到的所述任务执行状态在所述多个入库环节任务中选择并执行至少一个入库环节任务,并获取所执行的所述至少一个入库环节任务对应的任务结果数据,并根据所述任务结果数据更新所述任务执行状态;
所述执行更新模块,还用于当更新后的任务执行状态未满足最终合法条件时,继续根据所述更新后的任务执行状态在所述多个入库环节任务中选择并执行至少一个入库环节任务;
上线处理模块,用于当更新后的任务执行状态满足最终合法条件时,对所述入库应用进行合法上线处理。
本发明实施例通过获取入库应用,并对入库应用对应的任务执行状态进行监控,并根据所监控到的任务执行状态在多个入库环节任务中选择并执行至少一个入库环节任务,并获取所执行的至少一个入库环节任务对应的任务结果数据,并根据任务结果数据更新任务执行状态,从而可以在更新后的任务执行状态未满足最终合法条件时,继续根据更新后的任务执行状态在多个入库环节任务中选择并执行至少一个入库环节任务,以继续更新任务执行状态。由此可见,每个入库环节任务都被统一管理和调度,使得每个入库环节任务之间不再有依赖性,那么在新增入库环节任务时,无需修改每个入库环节任务之间的关系,依然由主控服务器进行统一管理和调度即可,从而降低了入库检测***的耦合性,并提高了可扩展性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种数据处理方法的流程示意图;
图2是本发明实施例提供的另一种数据处理方法的流程示意图;
图2a是本发明实施例提供的一种入库检测流程示意图;
图3是本发明实施例提供的一种数据处理装置的结构示意图;
图4是本发明实施例提供的一种执行更新模块的结构示意图;
图5是本发明实施例提供的一种获取监控模块的结构示意图;
图6是本发明实施例提供的另一种数据处理装置的结构示意图;
图7是本发明实施例提供的又一种数据处理装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,是本发明实施例提供的一种数据处理方法的流程示意图,所述方法可以包括:
S101,获取入库应用,并对所述入库应用对应的任务执行状态进行监控;所述入库应用对应有多个入库环节任务;
具体的,当主控服务器获取到所上传的入库应用时,可以先生成所述入库应用对应的UID(User Identification,应用身份标识),并为所述应用身份标识设置对应的任务执行状态,并将携带所述任务执行状态的所述应用身份标识添加至预设的调度队列中,并对所述调度队列中的所述应用身份标识所对应的所述任务执行状态进行监控;其中,所述调度队列包括多个入库应用分别对应的应用身份标识,每个应用身份标识均分别携带对应的任务执行状态;所述调度队列存放于共享数据库中,所述共享数据库与多个主控服务器相连接。其中,在所述主控服务器中会预先存储好与所述入库应用对应的多个入库环节任务,所述多个入库环节任务可以包括资源处理、脏字过滤、盗版判断、病毒扫描、签名作者分类处理等等,那么所述任务执行状态可以包括资源处理执行状态、脏字过滤执行状态、盗版判断执行状态、病毒扫描执行状态、签名作者分类处理执行状态等等,在入库检测的初始阶段,每个入库环节任务的执行状态均为未执行状态。
其中,在将携带所述任务执行状态的所述应用身份标识添加至所述调度队列时,还可以根据所述应用身份标识处于所述调度队列中的排序位置分配队列编号,并按照所述队列编号的优先级确定各个入库应用的入库检测的执行优先级。例如,若某应用身份标识在所述调度队列中的队列编号为11,而主控服务器一次性能够同时对10个入库应用进行入库检测,则该应用身份标识对应的入库应用需要等到队列编号为1-10的入库应用中有至少一个入库应用执行完入库检测时,才能对该应用身份标识对应的入库应用开始进行入库检测。
S102,根据所监控到的所述任务执行状态在所述多个入库环节任务中选择并执行至少一个入库环节任务;
具体的,当监控到所述任务执行状态发生变化时,可以根据所监控到的所述任务执行状态在所述多个入库环节任务中选择并执行至少一个入库环节任务。例如,在,在入库检测的初始阶段,每个入库环节任务的执行状态均为未执行状态,当成功执行完第一个入库环节任务“资源处理”时,所述主控服务器可以将所述任务执行状态中的资源处理执行状态更新为成功执行状态,此时,所述主控服务器可以根据所监控到的所述任务执行状态以及预设的路由规则在所述多个入库环节任务中选择并执行至少一个入库环节任务,若所述路由规则包括在成功执行完“资源处理”后则执行入库环节任务“脏字过滤”的规则,则所述主控服务器可以选择并执行所述入库环节任务“脏字过滤”;若所述路由规则包括在成功执行完“资源处理”后则执行入库环节任务“脏字过滤”和“盗版判断”的规则,则所述主控服务器可以同时选择并执行所述入库环节任务“脏字过滤”和“盗版判断”。
S103,获取所执行的所述至少一个入库环节任务对应的任务结果数据,并根据所述任务结果数据更新所述任务执行状态;
具体的,当执行完所选择出的至少一个入库环节任务时,所述主控服务器可以获取所执行的所述至少一个入库环节任务对应的任务结果数据,并根据所述任务结果数据更新所述任务执行状态;所述任务结果数据可以携带执行成功信息或执行失败信息。例如,所执行的入库环节任务为“脏字过滤”,当成功执行完“脏字过滤”时,可以获取到携带执行成功信息的任务结果数据,此时,可以根据该任务结果数据将所述任务执行状态中的脏字过滤执行状态从未执行状态更新为成功执行状态,即实现对所述任务执行状态进行更新;当所执行的“脏字过滤”因异常情况而结束时,可以获取到携带执行失败信息的任务结果数据,此时,可以根据该任务结果数据将所述任务执行状态中的脏字过滤执行状态从未执行状态更新为失败执行状态。
当同时执行的多个入库环节任务时,可以获取先执行完的入库环节任务对于的任务结果数据,并更新所述任务执行状态中该入库环节任务的执行状态;当又执行完另一个入库环节任务时,继续更新所述任务执行状态中另一个入库环节任务的执行状态。
S104,当更新后的任务执行状态未满足最终合法条件时,继续根据所述更新后的任务执行状态在所述多个入库环节任务中选择并执行至少一个入库环节任务;
具体的,当更新后的任务执行状态未满足最终合法条件时,继续根据所述更新后的任务执行状态在所述多个入库环节任务中选择并执行至少一个入库环节任务,并继续获取所执行的所述至少一个入库环节任务对应的任务结果数据,并根据所述任务结果数据对所述更新后的任务执行状态继续进行更新,即可以重复执行S103-S104的步骤。所述最终合法条件为所述任务执行状态中的每个入库环节任务的执行状态都为成功执行状态。例如,若所述任务执行状态包括资源处理执行状态、脏字过滤执行状态、盗版判断执行状态、病毒扫描执行状态、签名作者分类处理执行状态,且更新后的任务执行状态中的资源处理执行状态、脏字过滤执行状态、盗版判断执行状态、病毒扫描执行状态、签名作者分类处理执行状态均为成功执行状态,则可以确定所述更新后的任务执行状态满足所述最终合法条件;若更新后的任务执行状态中的资源处理执行状态、脏字过滤执行状态以及盗版判断执行状态均为成功执行状态,而其中的病毒扫描执行状态和签名作者分类处理执行状态均为未执行状态,则说明所述更新后的任务执行状态未满足所述最终合法条件,所述主控服务器可以根据所述更新后的任务执行状态在所述多个入库环节任务中选择并执行为“病毒扫描”的入库环节任务。
S105,当更新后的任务执行状态满足最终合法条件时,对所述入库应用进行合法上线处理;
具体的,当更新后的任务执行状态满足最终合法条件时,所述主控服务器可以对所述入库应用进行合法上线处理。
进一步的,当更新后的任务执行状态未满足所述最终合法条件,且所述更新后的任务执行状态中存在某入库环节任务的执行状态为失败执行状态时,可以直接对该入库应用进行非法下线处理,或者重新执行该入库环节任务并且在连续执行失败的次数达到预设的次数阈值时,对该入库应用进行非法下线处理。例如,若所述任务执行状态包括资源处理执行状态、脏字过滤执行状态、盗版判断执行状态、病毒扫描执行状态、签名作者分类处理执行状态,且更新后的任务执行状态中的资源处理执行状态和脏字过滤执行状态均为成功执行状态,其中的盗版判断执行状态为失败执行状态(即判断出该入库应用为盗版),其中的病毒扫描执行状态和签名作者分类处理执行状态均为未执行状态,则所述主控服务器可以根据将该入库应用进行非法下线处理,或者所述主控服务器将重新执行入库环节任务“盗版判断”,若连续执行三次“盗版判断”所对应的盗版判断执行状态始终为失败执行状态,则再将该入库应用进行非法下线处理。
本发明实施例通过获取入库应用,并对入库应用对应的任务执行状态进行监控,并根据所监控到的任务执行状态在多个入库环节任务中选择并执行至少一个入库环节任务,并获取所执行的至少一个入库环节任务对应的任务结果数据,并根据任务结果数据更新任务执行状态,从而可以在更新后的任务执行状态未满足最终合法条件时,继续根据更新后的任务执行状态在多个入库环节任务中选择并执行至少一个入库环节任务,以继续更新任务执行状态。由此可见,每个入库环节任务都被统一管理和调度,使得每个入库环节任务之间不再有依赖性,那么在新增入库环节任务时,无需修改每个入库环节任务之间的关系,依然由主控服务器进行统一管理和调度即可,从而降低了入库检测***的耦合性,并提高了可扩展性;而且每个入库环节任务都不再使用自己的上报和对账逻辑,而是由主控服务器统一对每个入库环节任务的任务结果数据进行分析和统计,可以保证每个入库环节任务都不会被遗漏,从而提高了入库检测***的可靠性。
再请参见图2,是本发明实施例提供的另一种数据处理方法的流程示意图,所述方法可以包括:
S201,获取入库应用,生成所述入库应用对应的应用身份标识,并为所述应用身份标识设置对应的任务执行状态;
具体的,当主控服务器获取到所上传的入库应用时,可以先生成所述入库应用对应的应用身份标识,并为所述应用身份标识设置对应的任务执行状态。其中,在所述主控服务器中会预先存储好与所述入库应用对应的多个入库环节任务,所述多个入库环节任务可以包括资源处理、脏字过滤、盗版判断、病毒扫描、签名作者分类处理等等,那么所述任务执行状态可以包括资源处理执行状态、脏字过滤执行状态、盗版判断执行状态、病毒扫描执行状态、签名作者分类处理执行状态等等,在入库检测的初始阶段,每个入库环节任务的执行状态均为未执行状态。
S202,将携带所述任务执行状态的所述应用身份标识添加至预设的调度队列中,并对所述调度队列中的所述应用身份标识所对应的所述任务执行状态进行监控;
具体的,所述主控服务器还可以将携带所述任务执行状态的所述应用身份标识添加至预设的调度队列中,并对所述调度队列中的所述应用身份标识所对应的所述任务执行状态进行监控;其中,所述调度队列包括多个入库应用分别对应的应用身份标识,每个应用身份标识均分别携带对应的任务执行状态;所述调度队列存放于共享数据库中,所述共享数据库与多个主控服务器相连接。
其中,在将携带所述任务执行状态的所述应用身份标识添加至所述调度队列时,还可以根据所述应用身份标识处于所述调度队列中的排序位置分配队列编号,并按照所述队列编号的优先级确定各个入库应用的入库检测的执行优先级。例如,若某应用身份标识在所述调度队列中的队列编号为11,而主控服务器一次性能够同时对10个入库应用进行入库检测,则该应用身份标识对应的入库应用需要等到队列编号为1-10的入库应用中有至少一个入库应用执行完入库检测时,才能对该应用身份标识对应的入库应用开始进行入库检测。
S203,根据预设的状态机,在所述多个入库环节任务中选择与所监控到的所述任务执行状态对应的至少一个入库环节任务;
具体的,所述状态机中配置有多种任务执行状态与所述多个入库环节任务之间的映射关系,即所述状态机具备对每个入库环节任务进行路由调度的功能。例如,所述状态机中配置的映射关系可以包括:任务执行状态A与入库环节任务“脏字过滤”的映射关系,任务执行状态B与入库环节任务“盗版判断”和“病毒扫描”的映射关系;其中,任务执行状态A是指资源处理执行状态为成功执行状态,其中的脏字过滤执行状态、盗版判断执行状态、病毒扫描执行状态以及签名作者分类处理执行状态均为未执行状态;任务执行状态B是指资源处理执行状态和脏字过滤执行状态均为成功执行状态,其中的盗版判断执行状态、病毒扫描执行状态以及签名作者分类处理执行状态均为未执行状态;那么,当监控到的任务执行状态A时,可以根据所述状态机选择出与任务执行状态A具有映射关系的入库环节任务“脏字过滤”;当监控到的任务执行状态B时,可以根据所述状态机选择出与任务执行状态B具有映射关系的入库环节任务“盗版判断”和“病毒扫描”。
S204,执行所选择出的所述至少一个入库环节任务,并判断在预设时间段内是否获取到所述至少一个入库环节任务对应的任务结果数据;
S205,根据获取到的所述任务结果数据所携带的执行成功信息或执行失败信息更新所述任务执行状态;
具体的,若S204判断为是,则所述主控服务器可以根据获取到的所述任务结果数据所携带的执行成功信息或执行失败信息更新所述任务执行状态。例如,所执行的入库环节任务为“脏字过滤”,当成功执行完“脏字过滤”时,可以获取到携带执行成功信息的任务结果数据,此时,可以根据该任务结果数据将所述任务执行状态中的脏字过滤执行状态从未执行状态更新为成功执行状态,即实现对所述任务执行状态进行更新;当所执行的“脏字过滤”因异常情况而结束时,可以获取到携带执行失败信息的任务结果数据,此时,可以根据该任务结果数据将所述任务执行状态中的脏字过滤执行状态从未执行状态更新为失败执行状态。在更新完所述任务执行状态后,即可执行步骤S207或S208。
S206,生成与所述至少一个入库环节任务对应的执行失败信息,并根据与所述至少一个入库环节任务对应的执行失败信息更新所述任务执行状态;
具体的,若S204判断为否,说明所述至少一个入库环节任务执行失败,此时,所述主控服务器可以直接生成与所述至少一个入库环节任务对应的执行失败信息,并根据与所述至少一个入库环节任务对应的执行失败信息更新所述任务执行状态。例如,所执行的入库环节任务为“脏字过滤”,当在所述预设时间段内都未接收到“脏字过滤”对应的任务结果数据时,可以生成与“脏字过滤”对应的执行失败信息,此时,可以根据该执行失败信息将所述任务执行状态中的脏字过滤执行状态从未执行状态更新为失败执行状态,即实现对所述任务执行状态进行更新。由于无论入库环节任务是否会上报任务结果数据,所述主控服务器均可以对各种情况进行监控,保证每个入库环节任务都不会被遗漏,从而保证了入库检测***的可靠性。在更新完所述任务执行状态后,即可执行步骤S207或S208。
S207,当更新后的任务执行状态未满足最终合法条件时,继续根据所述更新后的任务执行状态在所述多个入库环节任务中选择至少一个入库环节任务;
具体的,当更新后的任务执行状态未满足最终合法条件时,继续根据所述更新后的任务执行状态在所述多个入库环节任务中选择至少一个入库环节任务,并继续执行(S204和S205)或(S204和S206),即可以重复执行S204-S207步骤。所述最终合法条件为所述任务执行状态中的每个入库环节任务的执行状态都为成功执行状态。例如,若所述任务执行状态包括资源处理执行状态、脏字过滤执行状态、盗版判断执行状态、病毒扫描执行状态、签名作者分类处理执行状态,且更新后的任务执行状态中的资源处理执行状态、脏字过滤执行状态、盗版判断执行状态、病毒扫描执行状态、签名作者分类处理执行状态均为成功执行状态,则可以确定所述更新后的任务执行状态满足所述最终合法条件;若更新后的任务执行状态中的资源处理执行状态、脏字过滤执行状态以及盗版判断执行状态均为成功执行状态,而其中的病毒扫描执行状态和签名作者分类处理执行状态均为未执行状态,则说明所述更新后的任务执行状态未满足所述最终合法条件,所述主控服务器可以根据所述更新后的任务执行状态在所述多个入库环节任务中选择并执行为“病毒扫描”的入库环节任务。
S208,当更新后的任务执行状态满足最终合法条件时,对所述入库应用进行合法上线处理;
具体的,当更新后的任务执行状态满足最终合法条件时,所述主控服务器可以对所述入库应用进行合法上线处理。
可选的,当更新后的任务执行状态未满足所述最终合法条件,且所述更新后的任务执行状态属于执行失败重试类型时,重新执行属于所述执行失败重试类型的入库环节任务,并统计属于所述执行失败重试类型的入库环节任务对应的任务失败次数;当所述任务失败次数达到预设的次数阈值时,对所述入库应用进行非法下线处理。例如,若所述任务执行状态包括资源处理执行状态、脏字过滤执行状态、盗版判断执行状态、病毒扫描执行状态、签名作者分类处理执行状态,且更新后的任务执行状态中的资源处理执行状态和脏字过滤执行状态均为成功执行状态,其中的盗版判断执行状态为失败执行状态(即判断出该入库应用为盗版),其中的病毒扫描执行状态和签名作者分类处理执行状态均为未执行状态,则所述主控服务器可以根据将该入库应用进行非法下线处理;或者,所述主控服务器可以将所述更新后的任务执行状态确定为失败重试类型,并将重新执行入库环节任务“盗版判断”,若连续执行三次“盗版判断”所对应的盗版判断执行状态始终为失败执行状态,则再将该入库应用进行非法下线处理。
可选的,当检测到本地主控服务器的任务负载达到预设的负载上限值时,在所述调度队列中选择出至少一个应用身份标识,以作为至少一个目标应用身份标识;停止执行所述至少一个目标应用身份标识所对应的入库环节任务,并停止对所述至少一个目标应用身份标识所对应的任务执行状态进行监控;发送用于进行任务分流的协调请求消息到管理服务器,以使所述管理服务器将所述共享数据库中所述调度队列中的所述至少一个目标应用身份标识以及所对应的任务执行状态转移至任务负载未达到所述负载上限值的目标主控服务器上,并通知所述目标主控服务器执行所述至少一个目标应用身份标识所对应的入库环节任务并对所述至少一个目标应用身份标识所对应的任务执行状态进行监控;所述协调请求消息携带所述至少一个目标应用身份标识。例如,本地主控服务器已经超负载工作时,本地主控服务器可以在所述调度队列中选择出一个或多个排在末尾的应用身份标识,以作为目标应用身份标识,并停止对所选择出的目标应用身份标识对应的入库应用进行入库检测,并发送携带所选择出的目标应用身份标识的协调请求消息到管理服务器,则所述管理服务器可以选择出工作负载最低的主控服务器作为目标主控服务器,所述管理服务器再根据所述协调请求消息将所述共享数据库中所述调度队列中的目标应用身份标识以及所对应的任务执行状态以及相应的应用基本信息转移至所述目标主控服务器,使得所述目标主控服务器可以执行目标应用身份标识所对应的入库环节任务并对目标应用身份标识所对应的任务执行状态进行监控。
可选的,当本地主控服务器发生故障时,所述管理服务器可以直接将所述共享数据库中由所述本地主控服务器管理的调度队列转移至其他可正常工作的主控服务器,并由可正常工作的主控服务器管理该调度队列并对该调度队列中的每个应用身份标识对应的入库应用进行入库检测。
进一步的,再请一并参见图2a,是本发明实施例提供的一种入库检测流程示意图;在图2a中,当获取到入库应用时,可以生成对应的UID,并将该UID对应的任务执行状态存入调度队列中;图2a中的入库环节任务可以包括资源处理、脏字过滤、盗版判断、病毒扫描、签名作者分类处理、生成ID(identification,身份标识号)、上传CDN(Content Delivery Network,内容分发网络),其中,每个入库环节任务执行完后,都会将对应的任务结果数据返回至调度控制***,由该调度控制***根据获取到的任务结果数据更新该入库应用对应的任务执行状态,并根据更新后的任务执行状态路由选择相对应的入库环节任务进行执行。例如,当执行完盗版判断时,调度控制***根据对于的任务结果数据将所述任务执行状态中的盗版判断执行状态更新为成功执行状态,此时,更新后的任务执行状态中的资源处理执行状态、脏字过滤执行状态以及盗版判断执行状态均为成功执行状态,其中的签名作者分类处理执行状态、生成ID执行状态以及上传CDN执行状态均为未执行状态,因此,该调度控制***根据所述更新后的任务执行状态可以路由选择入库环节任务“病毒扫描”进行执行;当根据入库环节任务“病毒扫描”所返回的任务结果数据检测出该入库应用携带病毒时,该调度控制***可以路由至结束状态,即停止入库检测并对该入库应用进行下线处理;当该调度控制***检测出该入库应用对应的任务执行状态中资源处理执行状态、脏字过滤执行状态、盗版判断执行状态、签名作者分类处理执行状态、生成ID执行状态以及上传CDN执行状态均为成功执行状态时,该调度控制***可以对该入库应用进行上线处理。
本发明实施例通过获取入库应用,并对入库应用对应的任务执行状态进行监控,并根据所监控到的任务执行状态在多个入库环节任务中选择并执行至少一个入库环节任务,并获取所执行的至少一个入库环节任务对应的任务结果数据,并根据任务结果数据更新任务执行状态,从而可以在更新后的任务执行状态未满足最终合法条件时,继续根据更新后的任务执行状态在多个入库环节任务中选择并执行至少一个入库环节任务,以继续更新任务执行状态。由此可见,每个入库环节任务都被统一管理和调度,使得每个入库环节任务之间不再有依赖性,那么在新增入库环节任务时,无需修改每个入库环节任务之间的关系,依然由主控服务器进行统一管理和调度即可,从而降低了入库检测***的耦合性,并提高了可扩展性;而且每个入库环节任务都不再使用自己的上报和对账逻辑,而是由主控服务器统一对每个入库环节任务的任务结果数据进行分析和统计,可以保证每个入库环节任务都不会被遗漏,从而提高了入库检测***的可靠性。
请参见图3,是本发明实施例提供的一种数据处理装置的结构示意图,所述数据处理装置1可以应用于主控服务器中,所述数据处理装置1可以包括:获取监控模块10、执行更新模块20、上线处理模块30;
所述获取监控模块10,用于获取入库应用,并对所述入库应用对应的任务执行状态进行监控;所述入库应用对应有多个入库环节任务;
具体的,当所述获取监控模块10获取到所上传的入库应用时,所述获取监控模块10可以先生成所述入库应用对应的应用身份标识,并为所述应用身份标识设置对应的任务执行状态,并将携带所述任务执行状态的所述应用身份标识添加至预设的调度队列中,并对所述调度队列中的所述应用身份标识所对应的所述任务执行状态进行监控;其中,所述调度队列包括多个入库应用分别对应的应用身份标识,每个应用身份标识均分别携带对应的任务执行状态;所述调度队列存放于共享数据库中,所述共享数据库与多个主控服务器相连接。其中,在所述主控服务器中会预先存储好与所述入库应用对应的多个入库环节任务,所述多个入库环节任务可以包括资源处理、脏字过滤、盗版判断、病毒扫描、签名作者分类处理等等,那么所述任务执行状态可以包括资源处理执行状态、脏字过滤执行状态、盗版判断执行状态、病毒扫描执行状态、签名作者分类处理执行状态等等,在入库检测的初始阶段,每个入库环节任务的执行状态均为未执行状态。
所述执行更新模块20,用于根据所监控到的所述任务执行状态在所述多个入库环节任务中选择并执行至少一个入库环节任务,并获取所执行的所述至少一个入库环节任务对应的任务结果数据,并根据所述任务结果数据更新所述任务执行状态;
具体的,当监控到所述任务执行状态发生变化时,所述执行更新模块20可以根据所监控到的所述任务执行状态在所述多个入库环节任务中选择并执行至少一个入库环节任务。例如,在,在入库检测的初始阶段,每个入库环节任务的执行状态均为未执行状态,当成功执行完第一个入库环节任务“资源处理”时,所述执行更新模块20可以将所述任务执行状态中的资源处理执行状态更新为成功执行状态,此时,所述执行更新模块20可以根据所监控到的所述任务执行状态以及预设的路由规则在所述多个入库环节任务中选择并执行至少一个入库环节任务,若所述路由规则包括在成功执行完“资源处理”后则执行入库环节任务“脏字过滤”的规则,则所述执行更新模块20可以选择并执行所述入库环节任务“脏字过滤”;若所述路由规则包括在成功执行完“资源处理”后则执行入库环节任务“脏字过滤”和“盗版判断”的规则,则所述执行更新模块20可以同时选择并执行所述入库环节任务“脏字过滤”和“盗版判断”。
当执行完所选择出的至少一个入库环节任务时,所述执行更新模块20可以获取所执行的所述至少一个入库环节任务对应的任务结果数据,并根据所述任务结果数据更新所述任务执行状态;所述任务结果数据可以携带执行成功信息或执行失败信息。例如,所执行的入库环节任务为“脏字过滤”,当成功执行完“脏字过滤”时,可以获取到携带执行成功信息的任务结果数据,此时,所述执行更新模块20可以根据该任务结果数据将所述任务执行状态中的脏字过滤执行状态从未执行状态更新为成功执行状态,即实现对所述任务执行状态进行更新;当所执行的“脏字过滤”因异常情况而结束时,可以获取到携带执行失败信息的任务结果数据,此时,可以根据该任务结果数据将所述任务执行状态中的脏字过滤执行状态从未执行状态更新为失败执行状态。
当同时执行的多个入库环节任务时,所述执行更新模块20可以获取先执行完的入库环节任务对于的任务结果数据,并更新所述任务执行状态中该入库环节任务的执行状态;当又执行完另一个入库环节任务时,继续更新所述任务执行状态中另一个入库环节任务的执行状态。
所述执行更新模块20,还用于当更新后的任务执行状态未满足最终合法条件时,继续根据所述更新后的任务执行状态在所述多个入库环节任务中选择并执行至少一个入库环节任务;
具体的,当更新后的任务执行状态未满足最终合法条件时,所述执行更新模块20继续根据所述更新后的任务执行状态在所述多个入库环节任务中选择并执行至少一个入库环节任务,并继续获取所执行的所述至少一个入库环节任务对应的任务结果数据,并根据所述任务结果数据对所述更新后的任务执行状态继续进行更新,直至任务执行状态满足最终合法条件。所述最终合法条件为所述任务执行状态中的每个入库环节任务的执行状态都为成功执行状态。例如,若所述任务执行状态包括资源处理执行状态、脏字过滤执行状态、盗版判断执行状态、病毒扫描执行状态、签名作者分类处理执行状态,且更新后的任务执行状态中的资源处理执行状态、脏字过滤执行状态、盗版判断执行状态、病毒扫描执行状态、签名作者分类处理执行状态均为成功执行状态,则所述执行更新模块20可以确定所述更新后的任务执行状态满足所述最终合法条件;若更新后的任务执行状态中的资源处理执行状态、脏字过滤执行状态以及盗版判断执行状态均为成功执行状态,而其中的病毒扫描执行状态和签名作者分类处理执行状态均为未执行状态,则说明所述更新后的任务执行状态未满足所述最终合法条件,所述执行更新模块20可以根据所述更新后的任务执行状态在所述多个入库环节任务中选择并执行为“病毒扫描”的入库环节任务。
所述上线处理模块30,用于当更新后的任务执行状态满足最终合法条件时,对所述入库应用进行合法上线处理;
具体的,当更新后的任务执行状态满足最终合法条件时,所述上线处理模块30可以对所述入库应用进行合法上线处理。
进一步的,再请参见图4,是本发明实施例提供的一种执行更新模块20的结构示意图,所述执行更新模块20可以包括:选择单元201、执行判断单元202、更新单元203;
所述选择单元201,用于根据预设的状态机,在所述多个入库环节任务中选择与所监控到的所述任务执行状态对应的至少一个入库环节任务;所述状态机中配置有多种任务执行状态与所述多个入库环节任务之间的映射关系;
具体的,所述状态机中配置有多种任务执行状态与所述多个入库环节任务之间的映射关系,即所述状态机具备对每个入库环节任务进行路由调度的功能。例如,所述状态机中配置的映射关系可以包括:任务执行状态A与入库环节任务“脏字过滤”的映射关系,任务执行状态B与入库环节任务“盗版判断”和“病毒扫描”的映射关系;其中,任务执行状态A是指资源处理执行状态为成功执行状态,其中的脏字过滤执行状态、盗版判断执行状态、病毒扫描执行状态以及签名作者分类处理执行状态均为未执行状态;任务执行状态B是指资源处理执行状态和脏字过滤执行状态均为成功执行状态,其中的盗版判断执行状态、病毒扫描执行状态以及签名作者分类处理执行状态均为未执行状态;那么,当监控到的任务执行状态A时,所述选择单元201可以根据所述状态机选择出与任务执行状态A具有映射关系的入库环节任务“脏字过滤”;当监控到的任务执行状态B时,所述选择单元201可以根据所述状态机选择出与任务执行状态B具有映射关系的入库环节任务“盗版判断”和“病毒扫描”。
所述执行判断单元202,用于执行所选择出的所述至少一个入库环节任务,并判断在预设时间段内是否获取到所述至少一个入库环节任务对应的任务结果数据;
所述更新单元203,用于若所述执行判断单元202判断为是,则根据获取到的所述任务结果数据所携带的执行成功信息或执行失败信息更新所述任务执行状态;
具体的,若所述执行判断单元202判断为是,则所述更新单元203可以根据获取到的所述任务结果数据所携带的执行成功信息或执行失败信息更新所述任务执行状态。例如,所执行的入库环节任务为“脏字过滤”,当成功执行完“脏字过滤”时,所述更新单元203可以获取到携带执行成功信息的任务结果数据,此时,所述更新单元203可以根据该任务结果数据将所述任务执行状态中的脏字过滤执行状态从未执行状态更新为成功执行状态,即实现对所述任务执行状态进行更新;当所执行的“脏字过滤”因异常情况而结束时,所述更新单元203可以获取到携带执行失败信息的任务结果数据,此时,所述更新单元203可以根据该任务结果数据将所述任务执行状态中的脏字过滤执行状态从未执行状态更新为失败执行状态。
所述更新单元203,还用于若所述执行判断单元202判断为否,则生成与所述至少一个入库环节任务对应的执行失败信息,并根据与所述至少一个入库环节任务对应的执行失败信息更新所述任务执行状态;
具体的,若所述执行判断单元202判断为否,说明所述至少一个入库环节任务执行失败,此时,所述更新单元203可以直接生成与所述至少一个入库环节任务对应的执行失败信息,并根据与所述至少一个入库环节任务对应的执行失败信息更新所述任务执行状态。例如,所执行的入库环节任务为“脏字过滤”,当在所述预设时间段内都未接收到“脏字过滤”对应的任务结果数据时,所述更新单元203可以生成与“脏字过滤”对应的执行失败信息,此时,所述更新单元203可以根据该执行失败信息将所述任务执行状态中的脏字过滤执行状态从未执行状态更新为失败执行状态,即实现对所述任务执行状态进行更新。由于无论入库环节任务是否会上报任务结果数据,所述数据处理装置1始终可以对各种情况进行监控,保证每个入库环节任务都不会被遗漏,从而保证了入库检测***的可靠性。
进一步的,再请参见图5,是本发明实施例提供的一种获取监控模块10的结构示意图,所述获取监控模块10可以包括:获取设置单元101、添加监控单元102;
所述获取设置单元101,用于获取入库应用,生成所述入库应用对应的应用身份标识,并为所述应用身份标识设置对应的任务执行状态;
具体的,当所述获取设置单元101获取到所上传的入库应用时,所述获取设置单元101可以先生成所述入库应用对应的应用身份标识,并为所述应用身份标识设置对应的任务执行状态。其中,在所述主控服务器中会预先存储好与所述入库应用对应的多个入库环节任务,所述多个入库环节任务可以包括资源处理、脏字过滤、盗版判断、病毒扫描、签名作者分类处理等等,那么所述任务执行状态可以包括资源处理执行状态、脏字过滤执行状态、盗版判断执行状态、病毒扫描执行状态、签名作者分类处理执行状态等等,在入库检测的初始阶段,每个入库环节任务的执行状态均为未执行状态。
所述添加监控单元102,用于将携带所述任务执行状态的所述应用身份标识添加至预设的调度队列中,并对所述调度队列中的所述应用身份标识所对应的所述任务执行状态进行监控;
具体的,所述添加监控单元102还可以将携带所述任务执行状态的所述应用身份标识添加至预设的调度队列中,并对所述调度队列中的所述应用身份标识所对应的所述任务执行状态进行监控;其中,所述调度队列包括多个入库应用分别对应的应用身份标识,每个应用身份标识均分别携带对应的任务执行状态;所述调度队列存放于共享数据库中,所述共享数据库与多个主控服务器相连接。
其中,在将携带所述任务执行状态的所述应用身份标识添加至所述调度队列时,所述添加监控单元102还可以根据所述应用身份标识处于所述调度队列中的排序位置分配队列编号,并按照所述队列编号的优先级确定各个入库应用的入库检测的执行优先级。例如,若某应用身份标识在所述调度队列中的队列编号为11,而主控服务器一次性能够同时对10个入库应用进行入库检测,则该应用身份标识对应的入库应用需要等到队列编号为1-10的入库应用中有至少一个入库应用执行完入库检测时,才能对该应用身份标识对应的入库应用开始进行入库检测。
本发明实施例通过获取入库应用,并对入库应用对应的任务执行状态进行监控,并根据所监控到的任务执行状态在多个入库环节任务中选择并执行至少一个入库环节任务,并获取所执行的至少一个入库环节任务对应的任务结果数据,并根据任务结果数据更新任务执行状态,从而可以在更新后的任务执行状态未满足最终合法条件时,继续根据更新后的任务执行状态在多个入库环节任务中选择并执行至少一个入库环节任务,以继续更新任务执行状态。由此可见,每个入库环节任务都被统一管理和调度,使得每个入库环节任务之间不再有依赖性,那么在新增入库环节任务时,无需修改每个入库环节任务之间的关系,依然由主控服务器进行统一管理和调度即可,从而降低了入库检测***的耦合性,并提高了可扩展性;而且每个入库环节任务都不再使用自己的上报和对账逻辑,而是由主控服务器统一对每个入库环节任务的任务结果数据进行分析和统计,可以保证每个入库环节任务都不会被遗漏,从而提高了入库检测***的可靠性。
再请参见图6,是本发明实施例提供的另一种数据处理装置的结构示意图,所述数据处理装置1可以应用于主控服务器中,所述数据处理装置1可以包括上述图3对应实施例中的获取监控模块10、执行更新模块20、上线处理模块30,进一步的,所述数据处理装置1还可以包括:重新执行统计模块40、下线处理模块50、标识选择模块60、停止处理模块70、消息发送模块80;
所述重新执行统计模块40,用于当更新后的任务执行状态属于执行失败重试类型时,重新执行属于所述执行失败重试类型的入库环节任务,并统计属于所述执行失败重试类型的入库环节任务对应的任务失败次数;
所述下线处理模块50,用于当所述任务失败次数达到预设的次数阈值时,对所述入库应用进行非法下线处理;
例如,若所述任务执行状态包括资源处理执行状态、脏字过滤执行状态、盗版判断执行状态、病毒扫描执行状态、签名作者分类处理执行状态,且更新后的任务执行状态中的资源处理执行状态和脏字过滤执行状态均为成功执行状态,其中的盗版判断执行状态为失败执行状态(即判断出该入库应用为盗版),其中的病毒扫描执行状态和签名作者分类处理执行状态均为未执行状态,则所述下线处理模块50可以根据将该入库应用进行非法下线处理;或者,所述重新执行统计模块40可以将所述更新后的任务执行状态确定为失败重试类型,并将重新执行入库环节任务“盗版判断”,若连续执行三次“盗版判断”所对应的盗版判断执行状态始终为失败执行状态,则再由所述下线处理模块50将该入库应用进行非法下线处理。
所述标识选择模块60,用于当检测到本地主控服务器的任务负载达到预设的负载上限值时,在所述调度队列中选择出至少一个应用身份标识,以作为至少一个目标应用身份标识;
所述停止处理模块70,用于停止执行所述至少一个目标应用身份标识所对应的入库环节任务,并停止对所述至少一个目标应用身份标识所对应的任务执行状态进行监控;
所述消息发送模块80,用于发送用于进行任务分流的协调请求消息到管理服务器,以使所述管理服务器将所述共享数据库中所述调度队列中的所述至少一个目标应用身份标识以及所对应的任务执行状态转移至任务负载未达到所述负载上限值的目标主控服务器上,并通知所述目标主控服务器执行所述至少一个目标应用身份标识所对应的入库环节任务并对所述至少一个目标应用身份标识所对应的任务执行状态进行监控;
例如,本地主控服务器已经超负载工作时,所述标识选择模块60可以在所述调度队列中选择出一个或多个排在末尾的应用身份标识,以作为目标应用身份标识,并由所述停止处理模块70停止对所选择出的目标应用身份标识对应的入库应用进行入库检测,所述消息发送模块80发送携带所选择出的目标应用身份标识的协调请求消息到管理服务器,则所述管理服务器可以选择出工作负载最低的主控服务器作为目标主控服务器,所述管理服务器再根据所述协调请求消息将所述共享数据库中所述调度队列中的目标应用身份标识以及所对应的任务执行状态以及相应的应用基本信息转移至所述目标主控服务器,使得所述目标主控服务器可以执行目标应用身份标识所对应的入库环节任务并对目标应用身份标识所对应的任务执行状态进行监控。
可选的,当本地主控服务器发生故障时,所述管理服务器可以直接将所述共享数据库中由所述本地主控服务器管理的调度队列转移至其他可正常工作的主控服务器,并由可正常工作的主控服务器管理该调度队列并对该调度队列中的每个应用身份标识对应的入库应用进行入库检测。
本发明实施例通过获取入库应用,并对入库应用对应的任务执行状态进行监控,并根据所监控到的任务执行状态在多个入库环节任务中选择并执行至少一个入库环节任务,并获取所执行的至少一个入库环节任务对应的任务结果数据,并根据任务结果数据更新任务执行状态,从而可以在更新后的任务执行状态未满足最终合法条件时,继续根据更新后的任务执行状态在多个入库环节任务中选择并执行至少一个入库环节任务,以继续更新任务执行状态。由此可见,每个入库环节任务都被统一管理和调度,使得每个入库环节任务之间不再有依赖性,那么在新增入库环节任务时,无需修改每个入库环节任务之间的关系,依然由主控服务器进行统一管理和调度即可,从而降低了入库检测***的耦合性,并提高了可扩展性;而且每个入库环节任务都不再使用自己的上报和对账逻辑,而是由主控服务器统一对每个入库环节任务的任务结果数据进行分析和统计,可以保证每个入库环节任务都不会被遗漏,从而提高了入库检测***的可靠性。
请参见图7,是本发明实施例提供的又一种数据处理装置的结构示意图。如图7所示,所述数据处理装置1000可以包括:至少一个处理器1001,例如CPU,至少一个网络接口1004,用户接口1003,存储器1005,至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图7所示,作为一种计算机存储介质的存储器1005中可以包括操作***、网络通信模块、用户接口模块以及设备控制应用程序。
在图7所示的数据处理装置1000中,网络接口1004主要用于连接客户端,以获取客户端上传的入库应用;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,并具体执行以下步骤:
获取入库应用,并对所述入库应用对应的任务执行状态进行监控;所述入库应用对应有多个入库环节任务;
根据所监控到的所述任务执行状态在所述多个入库环节任务中选择并执行至少一个入库环节任务,并获取所执行的所述至少一个入库环节任务对应的任务结果数据,并根据所述任务结果数据更新所述任务执行状态;
当更新后的任务执行状态未满足最终合法条件时,继续根据所述更新后的任务执行状态在所述多个入库环节任务中选择并执行至少一个入库环节任务;
当更新后的任务执行状态满足最终合法条件时,对所述入库应用进行合法上线处理。
在一个实施例中,所述处理器1001在执行根据所监控到的所述任务执行状态在所述多个入库环节任务中选择并执行至少一个入库环节任务,并获取所执行的所述至少一个入库环节任务对应的任务结果数据,并根据所述任务结果数据更新所述任务执行状态时,具体执行以下步骤:
根据预设的状态机,在所述多个入库环节任务中选择与所监控到的所述任务执行状态对应的至少一个入库环节任务;所述状态机中配置有多种任务执行状态与所述多个入库环节任务之间的映射关系;
执行所选择出的所述至少一个入库环节任务,并判断在预设时间段内是否获取到所述至少一个入库环节任务对应的任务结果数据;
若判断为是,则根据获取到的所述任务结果数据所携带的执行成功信息或执行失败信息更新所述任务执行状态;
若判断为否,则生成与所述至少一个入库环节任务对应的执行失败信息,并根据与所述至少一个入库环节任务对应的执行失败信息更新所述任务执行状态。
在一个实施例中,所述处理器1001还执行以下步骤:
当更新后的任务执行状态属于执行失败重试类型时,重新执行属于所述执行失败重试类型的入库环节任务,并统计属于所述执行失败重试类型的入库环节任务对应的任务失败次数;
当所述任务失败次数达到预设的次数阈值时,对所述入库应用进行非法下线处理。
在一个实施例中,所述处理器1001在执行获取入库应用,并对所述入库应用对应的任务执行状态进行监控时,具体执行以下步骤:
获取入库应用,生成所述入库应用对应的应用身份标识,并为所述应用身份标识设置对应的任务执行状态;
将携带所述任务执行状态的所述应用身份标识添加至预设的调度队列中,并对所述调度队列中的所述应用身份标识所对应的所述任务执行状态进行监控;
其中,所述调度队列包括多个入库应用分别对应的应用身份标识,每个应用身份标识均分别携带对应的任务执行状态;所述调度队列存放于共享数据库中,所述共享数据库与多个主控服务器相连接。
在一个实施例中,所述处理器1001还执行以下步骤:
当检测到本地主控服务器的任务负载达到预设的负载上限值时,在所述调度队列中选择出至少一个应用身份标识,以作为至少一个目标应用身份标识;
停止执行所述至少一个目标应用身份标识所对应的入库环节任务,并停止对所述至少一个目标应用身份标识所对应的任务执行状态进行监控;
发送用于进行任务分流的协调请求消息到管理服务器,以使所述管理服务器将所述共享数据库中所述调度队列中的所述至少一个目标应用身份标识以及所对应的任务执行状态转移至任务负载未达到所述负载上限值的目标主控服务器上,并通知所述目标主控服务器执行所述至少一个目标应用身份标识所对应的入库环节任务并对所述至少一个目标应用身份标识所对应的任务执行状态进行监控。
本发明实施例通过获取入库应用,并对入库应用对应的任务执行状态进行监控,并根据所监控到的任务执行状态在多个入库环节任务中选择并执行至少一个入库环节任务,并获取所执行的至少一个入库环节任务对应的任务结果数据,并根据任务结果数据更新任务执行状态,从而可以在更新后的任务执行状态未满足最终合法条件时,继续根据更新后的任务执行状态在多个入库环节任务中选择并执行至少一个入库环节任务,以继续更新任务执行状态。由此可见,每个入库环节任务都被统一管理和调度,使得每个入库环节任务之间不再有依赖性,那么在新增入库环节任务时,无需修改每个入库环节任务之间的关系,依然由主控服务器进行统一管理和调度即可,从而降低了入库检测***的耦合性,并提高了可扩展性;而且每个入库环节任务都不再使用自己的上报和对账逻辑,而是由主控服务器统一对每个入库环节任务的任务结果数据进行分析和统计,可以保证每个入库环节任务都不会被遗漏,从而提高了入库检测***的可靠性。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (10)
1.一种数据处理方法,其特征在于,包括:
获取入库应用,并对所述入库应用对应的任务执行状态进行监控;所述入库应用对应有多个入库环节任务;
根据所监控到的所述任务执行状态在所述多个入库环节任务中选择并执行至少一个入库环节任务,并获取所执行的所述至少一个入库环节任务对应的任务结果数据,并根据所述任务结果数据更新所述任务执行状态;
当更新后的任务执行状态未满足最终合法条件时,继续根据所述更新后的任务执行状态在所述多个入库环节任务中选择并执行至少一个入库环节任务;
当更新后的任务执行状态满足最终合法条件时,对所述入库应用进行合法上线处理。
2.如权利要求1所述的方法,其特征在于,所述根据所监控到的所述任务执行状态在所述多个入库环节任务中选择并执行至少一个入库环节任务,并获取所执行的所述至少一个入库环节任务对应的任务结果数据,并根据所述任务结果数据更新所述任务执行状态,包括:
根据预设的状态机,在所述多个入库环节任务中选择与所监控到的所述任务执行状态对应的至少一个入库环节任务;所述状态机中配置有多种任务执行状态与所述多个入库环节任务之间的映射关系;
执行所选择出的所述至少一个入库环节任务,并判断在预设时间段内是否获取到所述至少一个入库环节任务对应的任务结果数据;
若判断为是,则根据获取到的所述任务结果数据所携带的执行成功信息或执行失败信息更新所述任务执行状态;
若判断为否,则生成与所述至少一个入库环节任务对应的执行失败信息,并根据与所述至少一个入库环节任务对应的执行失败信息更新所述任务执行状态。
3.如权利要求1所述的方法,其特征在于,还包括:
当更新后的任务执行状态属于执行失败重试类型时,重新执行属于所述执行失败重试类型的入库环节任务,并统计属于所述执行失败重试类型的入库环节任务对应的任务失败次数;
当所述任务失败次数达到预设的次数阈值时,对所述入库应用进行非法下线处理。
4.如权利要求1所述的方法,其特征在于,所述获取入库应用,并对所述入库应用对应的任务执行状态进行监控,包括:
获取入库应用,生成所述入库应用对应的应用身份标识,并为所述应用身份标识设置对应的任务执行状态;
将携带所述任务执行状态的所述应用身份标识添加至预设的调度队列中,并对所述调度队列中的所述应用身份标识所对应的所述任务执行状态进行监控;
其中,所述调度队列包括多个入库应用分别对应的应用身份标识,每个应用身份标识均分别携带对应的任务执行状态;所述调度队列存放于共享数据库中,所述共享数据库与多个主控服务器相连接。
5.如权利要求4所述的方法,其特征在于,还包括:
当检测到本地主控服务器的任务负载达到预设的负载上限值时,在所述调度队列中选择出至少一个应用身份标识,以作为至少一个目标应用身份标识;
停止执行所述至少一个目标应用身份标识所对应的入库环节任务,并停止对所述至少一个目标应用身份标识所对应的任务执行状态进行监控;
发送用于进行任务分流的协调请求消息到管理服务器,以使所述管理服务器将所述共享数据库中所述调度队列中的所述至少一个目标应用身份标识以及所对应的任务执行状态转移至任务负载未达到所述负载上限值的目标主控服务器上,并通知所述目标主控服务器执行所述至少一个目标应用身份标识所对应的入库环节任务并对所述至少一个目标应用身份标识所对应的任务执行状态进行监控。
6.一种数据处理装置,其特征在于,包括:
获取监控模块,用于获取入库应用,并对所述入库应用对应的任务执行状态进行监控;所述入库应用对应有多个入库环节任务;
执行更新模块,用于根据所监控到的所述任务执行状态在所述多个入库环节任务中选择并执行至少一个入库环节任务,并获取所执行的所述至少一个入库环节任务对应的任务结果数据,并根据所述任务结果数据更新所述任务执行状态;
所述执行更新模块,还用于当更新后的任务执行状态未满足最终合法条件时,继续根据所述更新后的任务执行状态在所述多个入库环节任务中选择并执行至少一个入库环节任务;
上线处理模块,用于当更新后的任务执行状态满足最终合法条件时,对所述入库应用进行合法上线处理。
7.如权利要求6所述的装置,其特征在于,所述执行更新模块包括:
选择单元,用于根据预设的状态机,在所述多个入库环节任务中选择与所监控到的所述任务执行状态对应的至少一个入库环节任务;所述状态机中配置有多种任务执行状态与所述多个入库环节任务之间的映射关系;
执行判断单元,用于执行所选择出的所述至少一个入库环节任务,并判断在预设时间段内是否获取到所述至少一个入库环节任务对应的任务结果数据;
更新单元,用于若所述执行判断单元判断为是,则根据获取到的所述任务结果数据所携带的执行成功信息或执行失败信息更新所述任务执行状态;
所述更新单元,还用于若所述执行判断单元判断为否,则生成与所述至少一个入库环节任务对应的执行失败信息,并根据与所述至少一个入库环节任务对应的执行失败信息更新所述任务执行状态。
8.如权利要求6所述的装置,其特征在于,还包括:
重新执行统计模块,用于当更新后的任务执行状态属于执行失败重试类型时,重新执行属于所述执行失败重试类型的入库环节任务,并统计属于所述执行失败重试类型的入库环节任务对应的任务失败次数;
下线处理模块,用于当所述任务失败次数达到预设的次数阈值时,对所述入库应用进行非法下线处理。
9.如权利要求6所述的装置,其特征在于,所述获取监控模块包括:
获取设置单元,用于获取入库应用,生成所述入库应用对应的应用身份标识,并为所述应用身份标识设置对应的任务执行状态;
添加监控单元,用于将携带所述任务执行状态的所述应用身份标识添加至预设的调度队列中,并对所述调度队列中的所述应用身份标识所对应的所述任务执行状态进行监控;
其中,所述调度队列包括多个入库应用分别对应的应用身份标识,每个应用身份标识均分别携带对应的任务执行状态;所述调度队列存放于共享数据库中,所述共享数据库与多个主控服务器相连接。
10.如权利要求9所述的装置,其特征在于,还包括:
标识选择模块,用于当检测到本地主控服务器的任务负载达到预设的负载上限值时,在所述调度队列中选择出至少一个应用身份标识,以作为至少一个目标应用身份标识;
停止处理模块,用于停止执行所述至少一个目标应用身份标识所对应的入库环节任务,并停止对所述至少一个目标应用身份标识所对应的任务执行状态进行监控;
消息发送模块,用于发送用于进行任务分流的协调请求消息到管理服务器,以使所述管理服务器将所述共享数据库中所述调度队列中的所述至少一个目标应用身份标识以及所对应的任务执行状态转移至任务负载未达到所述负载上限值的目标主控服务器上,并通知所述目标主控服务器执行所述至少一个目标应用身份标识所对应的入库环节任务并对所述至少一个目标应用身份标识所对应的任务执行状态进行监控。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610066909.6A CN107025129B (zh) | 2016-01-29 | 2016-01-29 | 一种数据处理方法以及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610066909.6A CN107025129B (zh) | 2016-01-29 | 2016-01-29 | 一种数据处理方法以及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107025129A true CN107025129A (zh) | 2017-08-08 |
CN107025129B CN107025129B (zh) | 2020-10-09 |
Family
ID=59524462
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610066909.6A Active CN107025129B (zh) | 2016-01-29 | 2016-01-29 | 一种数据处理方法以及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107025129B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109785042A (zh) * | 2018-12-13 | 2019-05-21 | 深圳平安财富宝投资咨询有限公司 | 分布式部署的异常处理方法、服务器、存储介质及装置 |
CN110750371A (zh) * | 2019-10-17 | 2020-02-04 | 北京创鑫旅程网络技术有限公司 | 流程执行方法、装置、设备及存储介质 |
CN110969421A (zh) * | 2019-12-23 | 2020-04-07 | 支付宝(杭州)信息技术有限公司 | 监测方法以及装置 |
CN111782679A (zh) * | 2020-06-22 | 2020-10-16 | 深圳市酷开网络科技有限公司 | 数据处理过程的监管方法、装置、计算机设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101425024A (zh) * | 2008-10-24 | 2009-05-06 | ***通信集团山东有限公司 | 一种多任务处理方法及装置 |
CN104394163A (zh) * | 2014-12-05 | 2015-03-04 | 浪潮电子信息产业股份有限公司 | 一种基于Web应用的安全检测方法 |
US20150066927A1 (en) * | 2013-08-30 | 2015-03-05 | Cavium, Inc. | Generating a Non-Deterministic Finite Automata (NFA) Graph for Regular Expression Patterns with Advanced Features |
CN104834599A (zh) * | 2015-04-24 | 2015-08-12 | 百度在线网络技术(北京)有限公司 | Web安全检测方法和装置 |
-
2016
- 2016-01-29 CN CN201610066909.6A patent/CN107025129B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101425024A (zh) * | 2008-10-24 | 2009-05-06 | ***通信集团山东有限公司 | 一种多任务处理方法及装置 |
US20150066927A1 (en) * | 2013-08-30 | 2015-03-05 | Cavium, Inc. | Generating a Non-Deterministic Finite Automata (NFA) Graph for Regular Expression Patterns with Advanced Features |
CN104394163A (zh) * | 2014-12-05 | 2015-03-04 | 浪潮电子信息产业股份有限公司 | 一种基于Web应用的安全检测方法 |
CN104834599A (zh) * | 2015-04-24 | 2015-08-12 | 百度在线网络技术(北京)有限公司 | Web安全检测方法和装置 |
Non-Patent Citations (3)
Title |
---|
于成丽: "移动智能终端应用安全检测技术研究与实践", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
于成丽等: "一种Android应用安全审核认证***的设计方案", 《电视技术》 * |
高扬: "海量移动应用数据处理技术研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109785042A (zh) * | 2018-12-13 | 2019-05-21 | 深圳平安财富宝投资咨询有限公司 | 分布式部署的异常处理方法、服务器、存储介质及装置 |
CN110750371A (zh) * | 2019-10-17 | 2020-02-04 | 北京创鑫旅程网络技术有限公司 | 流程执行方法、装置、设备及存储介质 |
CN110969421A (zh) * | 2019-12-23 | 2020-04-07 | 支付宝(杭州)信息技术有限公司 | 监测方法以及装置 |
CN110969421B (zh) * | 2019-12-23 | 2022-08-26 | 支付宝(杭州)信息技术有限公司 | 监测方法以及装置 |
CN111782679A (zh) * | 2020-06-22 | 2020-10-16 | 深圳市酷开网络科技有限公司 | 数据处理过程的监管方法、装置、计算机设备及存储介质 |
CN111782679B (zh) * | 2020-06-22 | 2024-03-26 | 深圳市酷开网络科技股份有限公司 | 数据处理过程的监管方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107025129B (zh) | 2020-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3149591B1 (en) | Tracking application deployment errors via cloud logs | |
US8667096B2 (en) | Automatically generating system restoration order for network recovery | |
CN110166462B (zh) | 访问控制方法、***、电子设备及计算机存储介质 | |
CN107025129A (zh) | 一种数据处理方法以及装置 | |
CN103346912B (zh) | 告警相关性分析的方法、装置及*** | |
AU2013200887B2 (en) | Multi-entity test case execution workflow | |
CN113169952A (zh) | 一种基于区块链技术的容器云管理*** | |
US8819155B2 (en) | System and method for performing centralized common tasks for a set of functions | |
CN104378342A (zh) | 多账号验证方法、装置及*** | |
CN110088744B (zh) | 一种数据库维护方法及其*** | |
CN110289999B (zh) | 一种数据处理方法、***及装置 | |
CN109063423A (zh) | 应用软件授权方法及*** | |
CN106095483A (zh) | 服务的自动化部署方法及装置 | |
CN111031000B (zh) | 一种业务风控***的处理方法、装置、***及存储介质 | |
CN106845215A (zh) | 基于虚拟化环境下的安全防护方法及装置 | |
CN111125648B (zh) | 一种设备变更方法和装置 | |
CN109213572A (zh) | 一种基于虚拟机的可信度确定方法及服务器 | |
CN104104666B (zh) | 一种探测云端服务异常的方法和装置 | |
CN106485139B (zh) | 一种应用程序的安全验证方法 | |
CN106487760A (zh) | 多账户体系的互通方法及装置 | |
CN101770553B (zh) | 一种移动终端、以及移动终端中根证书的调用方法 | |
US11829335B1 (en) | Using machine learning to provide a single user interface for streamlines deployment and management of multiple types of databases | |
CN110457018A (zh) | 一种基于Hadoop的数据管理***及其管理方法 | |
CN102112978A (zh) | 资源部署管理 | |
WO2020228564A1 (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 |