一种任务管控方法、装置、设备及存储介质与流程

未命名 08-18 阅读:71 评论:0


1.本发明涉及终端任务处理领域,特别涉及一种任务管控方法、装置、设备及存储介质。


背景技术:

2.随着终端安全产品的不断演进,从最开始的epp(endpoint protection platform,端点保护平台,一种传统的杀毒软件)到edr(endpoint detection&response,端点检测与响应,通过云端威胁情报、机器学习、异常行为分析等方式,主动发现来自外部或内部的安全威胁,并进行自动化的阻止、取证、补救和溯源,从而有效对端点进行防护的终端安全产品。),再到xdr(extended detection and response,可拓展威胁检测与响应),以及cwpp(cloud workload protection platform,云工作负载安全防护平台,是一种基于主机的解决方案,主要满足现代混合数据中心架构中,服务器工作负载的保护要求。通过使用单个管理控制台和单一方式表达安全策略来保护这些工作负载的终端安全产品。)等终端产品,其在实现功能的过程中,都不可避免的需要处理大量的任务,任务在真实的环境中,由于任务运行场景的多样性、复杂性,导致终端相关代码冗余复杂。而现有技术中,选择待执行任务后,将待执行任务发送至任务执行终端,然后接收任务执行终端返回的对应任务处理结果,再依据任务处理结果进一步确定从多个待执行任务中选择下一个待执行任务,这个过程主要强调任务的分发,处理的任务执行时机比较单一,不能满足现有复杂任务的执行需求。例如:任务可能需要每周一上午9点执行;网络负载高时,任务需要随机一定时间内启动执行;每天上午机器开机时启动任务;每天的10点到14点不能执行扫描任务。针对上述不同的执行时机问题目前不能很好的得到解决。因此,如何有效地针对任务的执行时机对任务进行管控,是本领域亟待解决的问题。


技术实现要素:

3.有鉴于此,本发明的目的在于提供一种任务管控方法、装置、设备及存储介质,可以针对不同任务的不同需求确定任务的执行时机,并且通过任务的任务执行状态表示任务的生命周期,通过任务执行状态完成任务控制,使任务管控的过程更加清晰并且条理清楚,有助于提高任务管控的效果。其具体方案如下:
4.第一方面,本技术提供了一种任务管控方法,应用于终端任务系统,包括:
5.读取预设任务数据库中的任务信息表,确定所述任务信息表中目标任务的任务执行时机,并基于预设任务判断规则根据所述任务执行时机判断所述目标任务是否为有效任务;所述任务信息表用于存储所述目标任务的基本信息;
6.若所述目标任务为有效任务,则根据所述目标任务的任务执行时机从所述目标任务中确定出待执行任务,并更新任务结果表中的所述待执行任务的任务执行状态,以及利用端口通信将所述待执行任务和对应的任务启动消息广播至终端业务模块;所述任务结果表保存于所述预设任务数据库中;
7.接收所述终端业务模块发送的所述待执行任务的任务执行结果,根据所述任务执行结果更新所述任务结果表中的所述待执行任务的任务执行状态,并将更新后的任务执行状态上报至任务管理中心。
8.可选的,所述读取预设任务数据库中的任务信息表之前,还包括:
9.读取所述任务结果表,根据所述任务结果表中的任务执行状态判断当前是否存在未执行完成的未完成任务;
10.若存在,则将所述未完成任务的任务执行状态更新为任务停止,以将所述未完成任务作为待补偿任务更新所述任务结果表。
11.可选的,所述读取预设任务数据库中的任务信息表之前,还包括:
12.获取任务管理中心和/或本地任务应用下发的目标任务的基本信息,并将目标任务的基本信息存储至所述预设任务数据库中的任务信息表;
13.若所述基本信息中包括任务删除指令对应的任务信息,则根据所述任务删除指令删除所述预设任务数据库中相应的任务。
14.可选的,所述基于预设任务判断规则根据所述任务执行时机判断所述目标任务是否为有效任务,包括:
15.若所述目标任务的任务执行时机为进程启动执行或定时执行,则判定所述目标任务为有效任务。
16.可选的,所述若所述目标任务为有效任务,则根据所述目标任务的任务执行时机从所述目标任务中确定出待执行任务,包括:
17.若所述目标任务的任务执行时机为进程启动执行,则直接执行所述根据所述目标任务的任务执行时机从所述目标任务中确定出待执行任务的步骤;
18.若所述目标任务的任务执行时机为定时执行,则将所述目标任务存储至预设缓存中,并利用定时器启动预设任务检测机制以判断所述目标任务是否满足对应的任务触发时间;若所述目标任务满足对应的任务触发时间,则判断所述目标任务是否需要重复执行,并根据该判断结果生成所述目标任务的任务标识,基于所述任务标识从所述目标任务中确定出待执行任务;若所述目标任务不满足对应的任务触发时间,则广播所述目标任务的任务停止消息至所述终端业务模块。
19.可选的,所述任务管控方法还包括:
20.若接收到任务管理中心和/或本地任务应用下发的用于对所述目标任务的执行过程进行控制的控制任务,则根据所述控制任务识别所述目标任务的任务标识,并利用所述任务标识查找所述任务结果表,以确定所述目标任务的任务执行状态,并执行所述控制任务以控制对应的所述目标任务。
21.可选的,所述根据所述任务执行结果更新所述任务结果表中的所述待执行任务的任务执行状态,并将更新后的任务执行状态上报至任务管理中心,包括:
22.根据所述任务执行结果更新所述任务结果表中的所述待执行任务的任务执行状态,并在所述任务结果表中记录当前时间以得到所述待执行任务对应的更新时间;
23.若所述任务执行状态为执行完成,则将所述预设任务数据库中的所述待执行任务删除,并将所述任务结果表中的更新后的所述任务执行状态上报至所述任务管理中心;
24.若所述更新后的任务执行状态上报失败,则调用预先创建的专用上报线程,以利
用所述专用上报线程将所述任务执行状态上报至所述任务管理中心。
25.第二方面,本技术提供了一种任务管控装置,应用于终端任务系统,包括:
26.执行时机确定模块,用于读取预设任务数据库中的任务信息表,确定所述任务信息表中目标任务的任务执行时机,并基于预设任务判断规则根据所述任务执行时机判断所述目标任务是否为有效任务;所述任务信息表用于存储所述目标任务的基本信息;
27.任务创建模块,用于若所述目标任务为有效任务,则根据所述目标任务的任务执行时机从所述目标任务中确定出待执行任务,并更新任务结果表中的所述待执行任务的任务执行状态,以及利用端口通信将所述待执行任务和对应的任务启动消息广播至终端业务模块;所述任务结果表保存于所述预设任务数据库中;
28.结果上报模块,用于接收所述终端业务模块发送的所述待执行任务的任务执行结果,根据所述任务执行结果更新所述任务结果表中的所述待执行任务的任务执行状态,并将更新后的任务执行状态上报至任务管理中心。
29.第三方面,本技术提供了一种电子设备,所述电子设备包括处理器和存储器;其中,所述存储器用于存储计算机程序,所述计算机程序由所述处理器加载并执行以实现前述的任务管控方法。
30.第四方面,本技术提供了一种计算机可读存储介质,用于保存计算机程序,所述计算机程序被处理器执行时实现前述的任务管控方法。
31.通过上述技术方案,本技术读取预设任务数据库中的任务信息表,确定所述任务信息表中目标任务的任务执行时机,并基于预设任务判断规则根据所述任务执行时机判断所述目标任务是否为有效任务;所述任务信息表用于存储所述目标任务的基本信息;若所述目标任务为有效任务,则根据所述目标任务的任务执行时机从所述目标任务中确定出待执行任务,并更新任务结果表中的所述待执行任务的任务执行状态,以及利用端口通信将所述待执行任务和对应的任务启动消息广播至终端业务模块;所述任务结果表保存于所述预设任务数据库中;接收所述终端业务模块发送的所述待执行任务的任务执行结果,根据所述任务执行结果更新所述任务结果表中的所述待执行任务的任务执行状态,并将更新后的任务执行状态上报至任务管理中心。这样一来,本技术考虑到终端产品中的复杂场景,基于维护状态机的思想,可以针对不同任务的不同需求确定任务的执行时机,并且通过任务的任务执行状态表示任务的生命周期,通过任务执行状态完成任务控制,避免仅仅对单一的任务执行时机进行处理可能导致无法应对复杂任务场景的问题,使任务管控的过程更加清晰并且条理清楚,有助于提高任务管控的效果。
附图说明
32.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
33.图1为本技术提供的一种任务管控方法流程图;
34.图2为本技术提供的一种任务管控系统初始化和任务接收流程图;
35.图3为本技术提供的一种任务管控系统示意图;
36.图4为本技术提供的一种终端业务模块的任务执行状态恢复流程图;
37.图5为本技术提供的一种具体的任务管控方法流程图;
38.图6为本技术提供的一种任务执行流程图;
39.图7为本技术提供的一种任务执行状态流转流程图;
40.图8为本技术提供的一种任务管控装置结构示意图;
41.图9为本技术提供的一种电子设备结构图。
具体实施方式
42.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
43.随着终端安全产品的不断演进,终端产品在研发过程中,总是会产生较多的任务需要处理,任务在真实的环境中,运行场景较多,此部分工作是即重要又繁琐。本技术提供一种综合管理终端任务的方法,用来统筹完成任务的启动、停止、暂停、恢复等工作,并且满足不同任务不同执行时机的要求,可以针对不同任务的不同需求确定任务的执行时机,通过任务执行状态完成任务控制,有助于提高任务管控的效果。
44.参见图1所示,本发明实施例公开了一种任务管控方法,应用于终端任务系统,包括:
45.步骤s11、读取预设任务数据库中的任务信息表,确定所述任务信息表中目标任务的任务执行时机,并基于预设任务判断规则根据所述任务执行时机判断所述目标任务是否为有效任务;所述任务信息表用于存储所述目标任务的基本信息。
46.本实施例中,首先需要读取预设任务数据库中的任务信息表,然后确定任务信息表中目标任务的任务执行时机,以便基于预设任务判断规则确定目标任务是否为有效任务。需要指出的是,所述任务信息表用于存储所述目标任务的基本信息,上述基本信息包括但不限于任务类型、任务执行时机、任务执行频率、任务排除频率、任务延时执行、任务随机执行、任务最长运行时间、任务名称、任务唯一标识、任务状态、任务描述、任务创建时间、任务随机延时时间等任务基本信息;其中,任务类型:由于在终端产品中,不同功能模块关注的任务存在区别,因此以任务类型做区分,功能模块只需订阅自己需要关注的类型即可,使任务的管控简单化;任务执行时机:指在终端产品中,不同的任务执行时间是存在一定的差异,考虑任务下发后是否直接执行、任务是否需要开机时执行、任务是否在进程启动时执行、任务是否在用户登录时执行、任务是否需要重复定时执行等;任务执行频率;指在终端产品中,有些任务是需要重复定时执行的,对于重复执行的任务,需要以执行频率的方式进行表达,此处用cron(cron是一个linux下的定时执行工具,表示计划任务,cron表达式是一个字符串,字符串以5或6个空格隔开,分6或7个域,每个域代表一个含义,表示秒、分、时、日期、月份、星期、年等时间)表达式来表示任务执行频率;任务排除频率;任务延时执行;指在终端产品中,有些任务需要延时执行,例如设置每天9点进行杀毒任务,但是终端在9点半才开机,此时就需要由延时执行机制,防止因为开机时间的不同,导致部分任务未成功执行的情况;任务随机执行:指在终端产品中,如果需要进行大量终端的杀毒引擎升级,此时需要
任务随机执行,如果大量终端同时进行升级,会增加网络带宽的压力,造成网络拥堵的情况,如果随机升级,即可将不同的终端随机一个时间,完成错峰升级,即完成了升级的任务,又不影响网络;任务最长执行时间:设置任务最长执行时间用于考虑业务模块在真正使用中,会存在使用或操作不当从而导致不能正常回复状态的情况。
47.本实施例中,在任务管控执行之前,需要进行初始化。如图2所示,在读取预设任务数据库中的任务信息表之前,读取预设任务数据库中的任务结果表,根据任务结果表中的任务执行状态判断当前是否存在未执行完成的未完成任务;若存在未完成任务,则将未完成任务的任务执行状态更新为任务停止,停止原因设置为shutdown,以将未完成任务作为待补偿任务更新任务结果表,用于将任务状态同步给任务管理中心。并且读取预设任务数据库中的任务信息表之前,如图2所示,还需要获取任务管理中心和/或本地任务应用下发的目标任务的基本信息,并将目标任务的基本信息存储至所述预设任务数据库中的任务信息表,以修改内存中的任务。其中,若所述基本信息中包括任务删除指令对应的任务信息,即收到的任务状态为delete,则根据所述任务删除指令删除所述预设任务数据库中相应的任务,该删除任务包括数据库中的任务表、任务结果表和内存中的任务、内存中的任务结果信息。
48.步骤s12、若所述目标任务为有效任务,则根据所述目标任务的任务执行时机从所述目标任务中确定出待执行任务,并更新任务结果表中的所述待执行任务的任务执行状态,以及利用端口通信将所述待执行任务和对应的任务启动消息广播至终端业务模块;所述任务结果表保存于所述预设任务数据库中。
49.本实施例中,若目标任务为有效任务,则根据目标任务的任务执行时机确定出待执行任务,并更新任务结果表中的待执行任务的任务执行状态,以及如图3所示,利用端口通信(预先封装的xbus总线,采用socket通信机制)将待执行任务和对应的任务启动消息广播至终端业务模块。上述任务结果表是存储任务执行时的具体执行状态,包括任务名称、任务唯一识别标识、任务运行时唯一识别标识、任务类型、任务状态、任务总量、已完成数量、已执行时间、剩余执行时间、自定义状态说明、最后操作时间。
50.步骤s13、接收所述终端业务模块发送的所述待执行任务的任务执行结果,根据所述任务执行结果更新所述任务结果表中的所述待执行任务的任务执行状态,并将更新后的任务执行状态上报至任务管理中心。
51.本实施例中,终端业务模块在初始化的时候,会订阅相关的任务消息,当任务系统广播任务给业务模块时,业务模块根据自己的订阅即可收到相关任务消息,并进行处理,然后终端业务模块处理收到的任务消息后,将实时同步任务的执行状态给终端任务系统,上述状态信息包括但不限于任务类型、任务状态、任务总量、已完成数量、已执行时间、剩余执行时间、自定义状态说明等。终端任务系统接收终端业务模块发送的待执行任务的任务执行结果后,根据任务执行结果更新任务结果表中的待执行任务的任务执行状态,并将更新后的任务执行状态上报至任务管理中心。
52.需要指出的是,在接收终端业务模块发送的所述待执行任务的任务执行结果时,根据任务执行结果更新任务结果表中的待执行任务的任务执行状态,并在任务结果表中记录当前时间以得到待执行任务对应的更新时间,即任务结果表中保存的最后操作时间,如图4所示,接收到任务结果消息后,从当前执行的任务中查找是否有此任务,若存在,则更新
任务结果表,修改该任务的lastupdatetime和reported任务标识为待发送状态,并在所述任务执行状态为执行完成的情况下,则将预设任务数据库中的待执行任务删除,并将任务结果表中的更新后的所述任务执行状态上报至所述任务管理中心,当前执行的待执行任务执行完成。并且可以理解的是,本实施例中,终端任务系统中单独运行有任务发送线程,用于补偿发送状态给管理中心,防止出现因为网络等问题发送失败导致任务状态丢失的问题,因此若所述更新后的任务执行状态上报失败,则调用预先创建的专用上报线程,利用所述专用上报线程将所述任务执行状态上报至所述任务管理中心。如图4所示,若任务执行结果以及任务执行状态上报成功,则修改reproted为发送结束状态,并更新任务执行状态和预设任务数据库内容,若发送失败,则将该任务对应的发送状态改为失败,更新任务信息表和预设任务数据库,并将补偿发送标记置为true,以便判断补偿发送标记,在需要补偿发送时,读取预设任务数据库补偿发送的任务执行结果信息,如已是补偿发送,且发送成功,则将补偿发送标记置为false。
53.本实施例中,上述任务管控方法可以有预设的任务管控系统执行,具体的,如图3所示,上述任务管控系统包括任务管理中心(平台)、终端任务系统、终端业务模块、本地任务应用,所述终端任务系统中包括预设任务数据库,用于保存任务信息表和任务结果表。具体的,任务管理中心的功能为下发普通任务、下发控制任务、展示任务实时执行状态、显示任务执行结果;终端任务系统的功能为接收中心下发的任务、维护任务状态机、分发普通任务、分发控制任务、接收业务模块回复的任务执行状态、发送任务状态和日志给中心。
54.任务结果表是存储任务执行时的具体执行状态,包括任务名称、任务唯一识别标识、任务运行时唯一识别标识、任务类型、任务状态、任务总量、已完成数量、已执行时间、剩余执行时间、自定义状态说明、最后操作时间;终端业务模块的功能为根据任务类型订阅任务消息、处理任务中具体业务、实时回复业务执行状态;本地任务应用的功能为创建本地任务、创建本地控制任务。
55.通过上述技术方案,本实施例读取预设任务数据库中的任务信息表,确定任务信息表中目标任务的任务执行时机,并判断目标任务是否为有效任务;若目标任务为有效任务,则根据目标任务的任务执行时机从目标任务中确定出待执行任务,并更新任务结果表中的待执行任务的任务执行状态,以及利用端口通信将待执行任务和对应的任务启动消息广播至终端业务模块;接收所述终端业务模块发送的所述待执行任务的任务执行结果,根据所述任务执行结果更新所述任务结果表中的所述待执行任务的任务执行状态,并将更新后的任务执行状态上报至任务管理中心。这样一来,可以针对不同任务的不同需求确定任务的执行时机,并且通过任务的任务执行状态表示任务的生命周期,通过任务执行状态完成任务控制,使任务管控的过程更加清晰并且条理清楚,有助于提高任务管控的效果。并且在任务执行状态上报时利用所述专用上报线程将所述任务执行状态上报至所述任务管理中心,防止出现因为网络等问题发送失败导致任务状态丢失的问题,不仅能启动和停止任务,还可执行暂停和恢复任务的操作,提高信息上报的可靠性。
56.基于上一实施例可知,本技术可以通过任务执行时机执行任务,并确定任务执行状态完成任务控制,接下来,本实施例中将对根据目标任务的任务执行时机确定出待执行任务的过程进行详细地阐述。参见图5所示,本技术实施例公开了一种具体的任务管控方法,包括:
57.步骤s21、读取预设任务数据库中的任务信息表,确定所述任务信息表中目标任务的任务执行时机,并基于预设任务判断规则根据所述任务执行时机判断所述目标任务是否为有效任务;所述任务信息表用于存储所述目标任务的基本信息。
58.步骤s22、若所述目标任务的任务执行时机为进程启动执行或定时执行,则判定所述目标任务为有效任务,若所述目标任务的任务执行时机为定时执行,则将所述目标任务存储至预设缓存中,并利用定时器启动预设任务检测机制以判断所述目标任务是否满足对应的任务触发时间;若所述目标任务满足对应的任务触发时间,则判断所述目标任务是否需要重复执行,并根据该判断结果生成所述目标任务的任务标识,基于所述任务标识从所述目标任务中确定出待执行任务。
59.本实施例中,若所述目标任务的任务执行时机为进程启动执行或定时执行,则判定所述目标任务为有效任务。在一种具体的实施例中,若所述目标任务的任务执行时机为进程启动执行,则直接执行所述根据所述目标任务的任务执行时机从所述目标任务中确定出待执行任务的步骤。在另一种具体的实施例中,若目标任务的任务执行时机为定时执行,则将目标任务存储至预设缓存中,并利用定时器启动预设任务检测机制以判断所述目标任务是否满足对应的任务触发时间。若所述目标任务满足对应的任务触发时间,则判断所述目标任务是否需要重复执行,并根据该判断结果生成所述目标任务的任务标识,基于所述任务标识从所述目标任务中确定出待执行任务。如图6所示,当收到有效任务时,判断当前任务是否达到触发时机,如果任务当前时间可执行,即目标任务满足对应的任务触发时间,则判断当前目标任务是否可重复执行,不可重复执行的任务同一时间只允许存在一个,然后创建任务详情,生成任务运行时唯一标识(taskrunid),并更新任务信息到预设任务数据库、更新任务执行状态到任务结果表中,然后广播任务启动消息到业务模块执行该任务。可以理解的是,因为存在定时或其他周期性任务,所以需要有单独线程判断内存中所有任务是否达到触发时机,上述的触发时机判断,包括任务的延时执行、任务的定时执行、任务的随机执行,当然如果任务已经达到最长运行时间,即若所述目标任务不满足对应的任务触发时间,则广播所述目标任务的任务停止消息至所述终端业务模块。这样一来,可满足不同任务的触发场景,以达到用户对任务的精确控制的目的。
60.需要指出的是,本实施例中,如图6所示,终端任务系统中还涉及到控制任务,可以暂停正在进行中的任务、恢复暂停中的任务、停止运行中的任务等操作。若接收到任务管理中心和/或本地任务应用下发的用于对所述目标任务的执行过程进行控制的控制任务,则根据所述控制任务识别所述目标任务的任务标识,并利用所述任务标识查找所述任务结果表,以确定所述目标任务的任务执行状态,并执行所述控制任务以控制对应的所述目标任务。即收到控制任务时,需根据任务唯一识别标识判断当前任务的执行状态,根据不同的状态,对控制任务做不同的处理,然后将控制任务广播给业务模块执行。需要指出的是,上述目标任务的任务标识可以用于表示任务执行状态,任务执行状态有等待执行(waiting)、运行中(running)、暂停中(pausing)、已暂停(paused)、恢复中(resuming)、停止中(stopping)、完成(complete)等,各状态出现的时机和状态由状态机(finite-state machine,表示有限个状态以及在这些状态之间的转移和动作等行为的数学模型)控制,各状态的运转流程图7所示。例如,任务管理中心下发启动任务后,若需要定时执行,则将任务执行状态改为waiting;若需要立即执行,则将任务执行状态改为running。若接收到控制任
务用于控制当前任务暂停时,则将任务执行状态改为stopping,并在任务执行完成后将任务执行状态改为complete,并且完成原因为stopped。其他任务执行状态的运转流程具体如图7所示,在此不再具体叙述。
61.步骤s23、更新任务结果表中的所述待执行任务的任务执行状态,以及利用端口通信将所述待执行任务和对应的任务启动消息广播至终端业务模块;所述任务结果表保存于所述预设任务数据库中。
62.步骤s24、接收所述终端业务模块发送的所述待执行任务的任务执行结果,根据所述任务执行结果更新所述任务结果表中的所述待执行任务的任务执行状态,并将更新后的任务执行状态上报至任务管理中心。
63.其中,关于上述步骤s21、s23和s24更加具体的处理过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
64.本实施例中,若目标任务的任务执行时机为进程启动执行或定时执行,判定目标任务为有效任务,并且若目标任务的任务执行时机为定时执行,则将目标任务存储至预设缓存中,并利用定时器启动预设任务检测机制以判断目标任务是否满足对应的任务触发时间;若目标任务满足对应的任务触发时间,则判断目标任务是否需要重复执行,并根据该判断结果生成所述目标任务的任务标识,基于任务标识从目标任务中确定出待执行任务。这样一来,从现实需求出发,针对不同任务的不同需求,例如杀毒程序需要每天扫描,并且在终端开机和进程启动时也需扫描;杀毒引擎需要错峰升级,降低网络带宽负载;工作时间(8-18点)不能升级杀毒引擎等,设计了一种任务分发、处理方法,可满足不同任务的触发场景,以达到用户对任务的精确控制的目的。
65.参见图8所示,本技术实施例还公开了一种任务管控装置,应用于终端任务系统,包括:
66.执行时机确定模块11,用于读取预设任务数据库中的任务信息表,确定所述任务信息表中目标任务的任务执行时机,并基于预设任务判断规则根据所述任务执行时机判断所述目标任务是否为有效任务;所述任务信息表用于存储所述目标任务的基本信息;
67.任务创建模块12,用于若所述目标任务为有效任务,则根据所述目标任务的任务执行时机从所述目标任务中确定出待执行任务,并更新任务结果表中的所述待执行任务的任务执行状态,以及利用端口通信将所述待执行任务和对应的任务启动消息广播至终端业务模块;所述任务结果表保存于所述预设任务数据库中;
68.结果上报模块13,用于接收所述终端业务模块发送的所述待执行任务的任务执行结果,根据所述任务执行结果更新所述任务结果表中的所述待执行任务的任务执行状态,并将更新后的任务执行状态上报至任务管理中心。
69.本实施例中读取预设任务数据库中的任务信息表,确定所述任务信息表中目标任务的任务执行时机,并基于预设任务判断规则根据所述任务执行时机判断所述目标任务是否为有效任务;所述任务信息表用于存储所述目标任务的基本信息;若所述目标任务为有效任务,则根据所述目标任务的任务执行时机从所述目标任务中确定出待执行任务,并更新任务结果表中的所述待执行任务的任务执行状态,以及利用端口通信将所述待执行任务和对应的任务启动消息广播至终端业务模块;所述任务结果表保存于所述预设任务数据库中;接收所述终端业务模块发送的所述待执行任务的任务执行结果,根据所述任务执行结
果更新所述任务结果表中的所述待执行任务的任务执行状态,并将更新后的任务执行状态上报至任务管理中心。通过上述技术方案,可以针对不同任务的不同需求确定任务的执行时机,并且通过任务的任务执行状态表示任务的生命周期,通过任务执行状态完成任务控制,使任务管控的过程更加清晰并且条理清楚,有助于提高任务管控的效果。
70.在一些具体实施例中,所述执行时机确定模块11,还包括:
71.任务判断单元,用于读取所述任务结果表,根据所述任务结果表中的任务执行状态判断当前是否存在未执行完成的未完成任务;
72.状态更新单元,用于若存在,则将所述未完成任务的任务执行状态更新为任务停止,以将所述未完成任务作为待补偿任务更新所述任务结果表。
73.在一些具体实施例中,所述执行时机确定模块11,还包括:
74.信息获取单元,用于获取任务管理中心和/或本地任务应用下发的目标任务的基本信息,并将目标任务的基本信息存储至所述预设任务数据库中的任务信息表;
75.任务删除单元,用于若所述基本信息中包括任务删除指令对应的任务信息,则根据所述任务删除指令删除所述预设任务数据库中相应的任务。
76.在一些具体实施例中,所述执行时机确定模块11,具体包括:
77.时机判断单元,用于若所述目标任务的任务执行时机为进程启动执行或定时执行,则判定所述目标任务为有效任务。
78.在一些具体实施例中,所述任务创建模块12,具体包括:
79.任务确定单元,用于若所述目标任务的任务执行时机为进程启动执行,则直接执行所述根据所述目标任务的任务执行时机从所述目标任务中确定出待执行任务的步骤;
80.任务广播单元,用于若所述目标任务的任务执行时机为定时执行,则将所述目标任务存储至预设缓存中,并利用定时器启动预设任务检测机制以判断所述目标任务是否满足对应的任务触发时间;若所述目标任务满足对应的任务触发时间,则判断所述目标任务是否需要重复执行,并根据该判断结果生成所述目标任务的任务标识,基于所述任务标识从所述目标任务中确定出待执行任务;若所述目标任务不满足对应的任务触发时间,则广播所述目标任务的任务停止消息至所述终端业务模块。
81.在一些具体实施例中,所述任务管控装置,还包括:
82.任务控制模块,用于若接收到任务管理中心和/或本地任务应用下发的用于对所述目标任务的执行过程进行控制的控制任务,则根据所述控制任务识别所述目标任务的任务标识,并利用所述任务标识查找所述任务结果表,以确定所述目标任务的任务执行状态,并执行所述控制任务以控制对应的所述目标任务。
83.在一些具体实施例中,所述结果上报模块13,具体包括:
84.时间记录单元,用于根据所述任务执行结果更新所述任务结果表中的所述待执行任务的任务执行状态,并在所述任务结果表中记录当前时间以得到所述待执行任务对应的更新时间;
85.第一状态上报单元,用于若所述任务执行状态为执行完成,则将所述预设任务数据库中的所述待执行任务删除,并将所述任务结果表中的更新后的所述任务执行状态上报至所述任务管理中心;
86.第二状态上报单元,用于若所述更新后的任务执行状态上报失败,则调用预先创
建的专用上报线程,以利用所述专用上报线程将所述任务执行状态上报至所述任务管理中心。
87.进一步的,本技术实施例还公开了一种电子设备,图9是根据一示例性实施例示出的电子设备20结构图,图中的内容不能认为是对本技术的使用范围的任何限制。
88.图9为本技术实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、电源23、通信接口24、输入输出接口25和通信总线26。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的任务管控方法中的相关步骤。另外,本实施例中的电子设备20具体可以为电子计算机。
89.本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口24能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本技术技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
90.另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源可以包括操作系统221、计算机程序222等,存储方式可以是短暂存储或者永久存储。
91.其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,其可以是windows server、netware、unix、linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的任务管控方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。
92.进一步的,本技术还公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的任务管控方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
93.本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
94.专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
95.结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
96.最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将
一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
97.以上对本技术所提供的技术方案进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的一般技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术的限制。

技术特征:
1.一种任务管控方法,其特征在于,应用于终端任务系统,包括:读取预设任务数据库中的任务信息表,确定所述任务信息表中目标任务的任务执行时机,并基于预设任务判断规则根据所述任务执行时机判断所述目标任务是否为有效任务;所述任务信息表用于存储所述目标任务的基本信息;若所述目标任务为有效任务,则根据所述目标任务的任务执行时机从所述目标任务中确定出待执行任务,并更新任务结果表中的所述待执行任务的任务执行状态,以及利用端口通信将所述待执行任务和对应的任务启动消息广播至终端业务模块;所述任务结果表保存于所述预设任务数据库中;接收所述终端业务模块发送的所述待执行任务的任务执行结果,根据所述任务执行结果更新所述任务结果表中的所述待执行任务的任务执行状态,并将更新后的任务执行状态上报至任务管理中心。2.根据权利要求1所述的任务管控方法,其特征在于,所述读取预设任务数据库中的任务信息表之前,还包括:读取所述任务结果表,根据所述任务结果表中的任务执行状态判断当前是否存在未执行完成的未完成任务;若存在,则将所述未完成任务的任务执行状态更新为任务停止,以将所述未完成任务作为待补偿任务更新所述任务结果表。3.根据权利要求1所述的任务管控方法,其特征在于,所述读取预设任务数据库中的任务信息表之前,还包括:获取任务管理中心和/或本地任务应用下发的目标任务的基本信息,并将目标任务的基本信息存储至所述预设任务数据库中的任务信息表;若所述基本信息中包括任务删除指令对应的任务信息,则根据所述任务删除指令删除所述预设任务数据库中相应的任务。4.根据权利要求1所述的任务管控方法,其特征在于,所述基于预设任务判断规则根据所述任务执行时机判断所述目标任务是否为有效任务,包括:若所述目标任务的任务执行时机为进程启动执行或定时执行,则判定所述目标任务为有效任务。5.根据权利要求4所述的任务管控方法,其特征在于,所述若所述目标任务为有效任务,则根据所述目标任务的任务执行时机从所述目标任务中确定出待执行任务,包括:若所述目标任务的任务执行时机为进程启动执行,则直接执行所述根据所述目标任务的任务执行时机从所述目标任务中确定出待执行任务的步骤;若所述目标任务的任务执行时机为定时执行,则将所述目标任务存储至预设缓存中,并利用定时器启动预设任务检测机制以判断所述目标任务是否满足对应的任务触发时间;若所述目标任务满足对应的任务触发时间,则判断所述目标任务是否需要重复执行,并根据该判断结果生成所述目标任务的任务标识,基于所述任务标识从所述目标任务中确定出待执行任务;若所述目标任务不满足对应的任务触发时间,则广播所述目标任务的任务停止消息至所述终端业务模块。6.根据权利要求5所述的任务管控方法,其特征在于,还包括:若接收到任务管理中心和/或本地任务应用下发的用于对所述目标任务的执行过程进
行控制的控制任务,则根据所述控制任务识别所述目标任务的任务标识,并利用所述任务标识查找所述任务结果表,以确定所述目标任务的任务执行状态,并执行所述控制任务以控制对应的所述目标任务。7.根据权利要求1至6任一项所述的任务管控方法,其特征在于,所述根据所述任务执行结果更新所述任务结果表中的所述待执行任务的任务执行状态,并将更新后的任务执行状态上报至任务管理中心,包括:根据所述任务执行结果更新所述任务结果表中的所述待执行任务的任务执行状态,并在所述任务结果表中记录当前时间以得到所述待执行任务对应的更新时间;若所述任务执行状态为执行完成,则将所述预设任务数据库中的所述待执行任务删除,并将所述任务结果表中的更新后的所述任务执行状态上报至所述任务管理中心;若所述更新后的任务执行状态上报失败,则调用预先创建的专用上报线程,以利用所述专用上报线程将所述任务执行状态上报至所述任务管理中心。8.一种任务管控装置,其特征在于,应用于终端任务系统,包括:执行时机确定模块,用于读取预设任务数据库中的任务信息表,确定所述任务信息表中目标任务的任务执行时机,并基于预设任务判断规则根据所述任务执行时机判断所述目标任务是否为有效任务;所述任务信息表用于存储所述目标任务的基本信息;任务创建模块,用于若所述目标任务为有效任务,则根据所述目标任务的任务执行时机从所述目标任务中确定出待执行任务,并更新任务结果表中的所述待执行任务的任务执行状态,以及利用端口通信将所述待执行任务和对应的任务启动消息广播至终端业务模块;所述任务结果表保存于所述预设任务数据库中;结果上报模块,用于接收所述终端业务模块发送的所述待执行任务的任务执行结果,根据所述任务执行结果更新所述任务结果表中的所述待执行任务的任务执行状态,并将更新后的任务执行状态上报至任务管理中心。9.一种电子设备,其特征在于,所述电子设备包括处理器和存储器;其中,所述存储器用于存储计算机程序,所述计算机程序由所述处理器加载并执行以实现如权利要求1至7任一项所述的任务管控方法。10.一种计算机可读存储介质,其特征在于,用于保存计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的任务管控方法。

技术总结
本申请公开了一种任务管控方法、装置、设备及存储介质,涉及终端任务处理领域,包括:读取任务信息表,确定其中目标任务的任务执行时机,并判断目标任务是否为有效任务;若为有效任务,则根据任务执行时机确定出待执行任务,并更新任务结果表中的任务执行状态,将待执行任务和任务启动消息广播至终端业务模块;接收终端业务模块发送的任务执行结果,根据任务执行结果更新任务结果表中的任务执行状态,并将更新后的任务执行状态上报至任务管理中心。针对不同任务的不同需求确定任务的执行时机,并且通过任务的任务执行状态表示任务的生命周期,通过任务执行状态完成任务控制,使任务管控的过程更加清晰并且条理清楚,有助于提高任务管控的效果。务管控的效果。务管控的效果。


技术研发人员:姜喜庆 孟希杰
受保护的技术使用者:杭州安恒信息安全技术有限公司
技术研发日:2023.05.18
技术公布日:2023/8/16
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐