CN109740934A - 运维作业控制方法、装置、设备及计算机可读存储介质 - Google Patents

运维作业控制方法、装置、设备及计算机可读存储介质 Download PDF

Info

Publication number
CN109740934A
CN109740934A CN201811652725.3A CN201811652725A CN109740934A CN 109740934 A CN109740934 A CN 109740934A CN 201811652725 A CN201811652725 A CN 201811652725A CN 109740934 A CN109740934 A CN 109740934A
Authority
CN
China
Prior art keywords
job
template
task
execution
instance data
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
Application number
CN201811652725.3A
Other languages
English (en)
Inventor
伦秉力
朱红燕
莫林林
曾纪策
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
WeBank Co Ltd
Original Assignee
WeBank Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by WeBank Co Ltd filed Critical WeBank Co Ltd
Priority to CN201811652725.3A priority Critical patent/CN109740934A/zh
Publication of CN109740934A publication Critical patent/CN109740934A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明公开了一种运维作业控制方法、装置、设备及计算机可读存储介质,该方法包括步骤:接收用户端发送的针对运维作业的执行请求,所述运维作业包括若干个具有预设执行顺序的作业步骤;根据所述作业步骤包括的模版实例,调用预置的与所述模版实例对应的实例数据,生成多个任务;基于所述预设执行顺序,将所述多个任务递交至消息队列;根据任务执行规则,从所述消息队列获取任务并执行获取到的所述任务。本发明通过将运维作业中可以复用的操作固化作为实例化模版,任务生成时直接调用固化的操作指令对应的实例数据来生成任务,通过消息队列将作业提交与作业执行解耦,提高了运维工作的效率。

Description

运维作业控制方法、装置、设备及计算机可读存储介质
技术领域
本发明涉及自动化运维技术领域,尤其涉及一种运维作业控制方法、装置、设备及计算机可读存储介质。
背景技术
近年来,以金融行业为代表的大型企业业务系统对运维管理的需求持续快速地增长,运维是通过运维中心对目标系统运营监控和维护辅助,以此保证目标系统的服务可靠性;运维人员通过运维中心登录目标服务器并输入相应的操作指令,如脚本执行、文件分发等来控制目标服务器执行运维作业,随着需要运维管理的业务系统的增多,在批量运维作业中,针对每台目标服务器,运维人员都需要重复操作,并且运维中心各组件之间的耦合度较高,当前作业提交完成后必须等待当前作业执行完毕,才可以开始下一个作业提交,运维人员在重复操作过程容易出错,且运维工作效率低。
发明内容
本发明的主要目的在于提供一种运维作业控制方法、装置、设备及计算机可读存储介质,旨在通过将运维作业过程中可以复用的操作固化,并将运维作业的提交与作业执行解耦,提高了运维工作的效率。
为实现上述目的,本发明提供一种运维作业控制方法,所述运维作业控制方法包括步骤:
接收用户端发送的针对运维作业的执行请求,所述运维作业包括若干个具有预设执行顺序的作业步骤;
根据所述作业步骤包括的模版实例,调用预置的与所述模版实例对应的实例数据,生成多个任务;
基于所述预设执行顺序,将所述多个任务递交至消息队列;
根据任务执行规则,从所述消息队列获取任务并执行获取到的所述任务。
可选地,所述根据所述作业步骤包括的模版实例,调用预置的与所述模版实例对应的实例数据,生成多个任务的步骤包括:
识别所述作业步骤包括一个模版实例或包括多个具有预设关联关系的模版实例;
若识别到所述作业步骤包括一个模版实例,则从数据库调用预置的与所述模版实例对应的实例数据,生成多个任务;
若识别到所述作业步骤包括多个具有预设关联关系的模版实例,则从数据库调用预置的与所述作业步骤包括的多个模版实例对应的实例数据,基于所述预设关联关系,生成多个任务。
可选地,所述根据所述作业步骤包括的模版实例,调用预置的与所述模版实例对应的实例数据,生成多个任务的步骤之前还包括:
判断所述作业步骤是否包括模版实例;
若是,则进入步骤:根据所述作业步骤包括的模版实例,调用预置的与所述模版实例对应的实例数据,生成多个任务。
可选地,所述根据所述作业步骤包括的模版实例,调用预置的与所述模版实例对应的实例数据,生成多个任务的步骤之前还包括:
接收用户端发送的分别与不同模版实例对应的多组实例数据;
将所述多组实例数据存储至数据库。
可选地,所述将所述多组实例数据存储至数据库的步骤之后还包括:
若检测到针对所述实例数据的第一更新指令,响应于所述第一更新指令,更新所述第一更新指令对应的实例数据。
可选地,所述接收用户端发送的针对运维作业的执行请求的步骤之前还包括:
响应于用户端发送的运维作业创建指令,根据接收到的若干个作业步骤配置及所述若干个作业步骤之间的预设执行顺序,创建运维作业;所述作业步骤配置包括模版实例配置。
可选地,所述响应于用户端发送的运维作业创建指令,根据接收到的若干个作业步骤配置及所述若干个作业步骤之间的预设执行顺序,创建运维作业的步骤之后还包括:
若检测到针对所述模版实例配置的第二更新指令,响应于所述第二更新指令,更新所述第二更新指令对应的作业步骤配置包括的模版实例配置。
可选地,所述根据任务执行规则,从所述消息队列获取任务并执行获取到的所述任务的步骤之后还包括:
发送任务执行状态和/或作业执行状态至所述用户端。
此外,本发明实施例还提供一种运维作业控制装置,所述运维作业控制装置包括:
交互模块,用于在接收到用户端发送的针对运维作业的执行请求后,根据所述运维作业的作业步骤包括的模版实例,调用预置的与所述模版实例对应的实例数据,生成多个任务;其中,所述运维作业包括若干个具有预设执行顺序的作业步骤;
调度模块,用于基于所述预设执行顺序,将所述多个任务递交至消息队列;
执行模块,用于根据任务执行规则,从所述消息队列获取任务并执行获取到的所述任务。
可选地,所述交互模块包括:
接收单元,用于接收用户端发送的针对运维作业的执行请求,所述运维作业包括若干个具有预设执行顺序的作业步骤;
识别单元,用于识别所述作业步骤包括一个模版实例或包括多个具有预设关联关系的模版实例;
第一任务生成单元,用于在所述识别单元识别到所述作业步骤包括一个模版实例后,从数据库调用预置的与所述模版实例对应的实例数据,生成多个任务;
第二任务生成单元,用于在所述识别单元识别到所述作业步骤包括多个具有预设关联关系的模版实例后,从数据库调用预置的与所述作业步骤包括的多个模版实例对应的实例数据,基于所述预设关联关系,生成多个任务。
可选地,所述交互模块还包括:
判断单元,用于在所述接收单元接收到用户端发送的针对运维作业的执行请求后,判断所述运维作业对应的作业步骤是否包括模版实例,并将判断结果发送至所述识别单元;
所述识别单元,还用于在接收到所述判断单元发送的判断结果为“是”后,识别所述作业步骤包括一个模版实例或包括多个具有预设关联关系的模版实例。
可选地,所述交互模块还包括:
模版创建单元,用于接收用户端发送的分别与不同模版实例对应的多组实例数据,并将所述多组实例数据存储至数据库。
可选地,所述交互模块还包括:
作业创建单元,用于在接收到用户端发送的运维作业创建指令后,根据接收到的若干个作业步骤配置及所述若干个作业步骤之间的预设执行顺序,创建运维作业;所述作业步骤配置包括模版实例配置。
此外,为实现上述目的,本发明还提供一种运维作业控制设备,所述运维作业控制设备包括存储器、处理器和存储在所述存储器上并可在所述处理器上运行的运维作业控制程序,所述运维作业控制程序被所述处理器执行时实现如上所述的运维作业控制方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有运维作业控制程序,所述运维作业控制程序被处理器执行时实现如上所述的运维作业控制方法的步骤。
本发明通过接收用户端发送的针对运维作业的执行请求,所述运维作业包括若干个具有预设执行顺序的作业步骤;根据所述作业步骤包括的模版实例,调用预置的与所述模版实例对应的实例数据,生成多个任务;基于所述预设执行顺序,将所述多个任务递交至消息队列;根据任务执行规则,从所述消息队列获取任务并执行获取到的所述任务;由此,将运维作业中可以复用的操作指令固化,作为模版实例,任务生成时直接调用固化的操作指令对应的实例数据来生成任务提交至消息队列,而不再需要运维人员针对每台目标服务器重复输入相同的操作指令来实例化任务,提高了运维工作效率的同时降低了运维人员的操作失误率;通过消息队列将运维作业任务提交和执行解耦,解决了现有运维中心各组件之间的耦合度较高,当前作业提交完成后必须等待当前作业执行完毕,才可以开始下一个作业导致的运维工作效率低的问题。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的结构示意图;
图2为本发明运维作业控制方法第一实施例的流程示意图;
图3为图2中步骤S200的细化步骤示意图;
图4为本发明运维作业控制方法第二实施例的流程示意图;
图5为本发明运维作业控制方法第三实施例的流程示意图;
图6为本发明运维作业控制方法第四实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的结构示意图。
需要说明的是,图1即可为运维作业控制设备的硬件运行环境的结构示意图。本发明实施例运维作业控制设备可以是PC,便携计算机等终端设备。
如图1所示,该运维作业控制设备可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选的,用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的运维作业控制设备结构并不构成对运维作业控制设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及运维作业控制程序。其中,操作系统是管理和控制运维作业控制设备硬件和软件资源的程序,支持运维作业控制程序以及其它软件或程序的运行。
在图1所示的运维作业控制设备中,用户接口1003主要用于连接用户(用户端),与用户进行数据通信;网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;而处理器1001可以用于调用存储器1005中存储的运维作业控制程序,并执行以下运维作业控制方法的各个步骤。
基于上述的结构,提出运维作业控制方法的各个实施例。
参照图2,图2为本发明运维作业控制方法第一实施例的流程示意图。
本发明实施例提供了运维作业控制方法的实施例,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
运维作业控制方法包括:
步骤S100,接收用户端发送的针对运维作业的执行请求,所述运维作业包括若干个具有预设执行顺序的作业步骤;
目前,以金融行业为代表的大型企业业务系统对运维管理的需求持续快速增长,运维是指通过运维中心对目标系统运营监控和维护辅助,以此保证目标系统的服务可靠性。
运维人员通过运维中心的中控机器登录目标服务器输入相应的操作指令,如脚本执行、文件分发等来控制目标服务器执行运维作业,随着需要运维管理的业务系统的增多,批量运维作业中,针对每台目标服务器,运维人员都需要在中控机器重复操作,并且中控机器各组件之间的耦合度较高,当前作业提交完成后必须等待当前作业执行完毕,才可以开始下一个作业提交,运维人员在重复操作过程容易出错,且运维工作效率低。
本实施例中,首先,接收用户端发送的针对运维作业的执行请求,所述运维作业包括若干个具有预设执行顺序的作业步骤。
用户基于运维需求定义运维作业,运维作业包括若干个用户自定义执行顺序的作业步骤;用户在定义作业时,作为一种实施方式,用户每添加一个作业步骤可以选择一个基础模版或者选择一个复合模版;需要说明的是,基础模版是用户存储的固化的基本操作,如脚本执行、SQL执行、文件分发、接口调用等基本操作,每个基本操作可以通过基础模版的方式固化下来,如将“在目标机器上从文件服务器下载脚本文件并执行”这一基本操作以脚本执行模版存储在数据库,当作业步骤中配置了脚本执行模版这一基础模版后,根据作业步骤生成任务时,直接调用“在目标机器上从文件服务器下载脚本文件并执行”这一实例生成多个可以执行的任务;进一步地,复合模版是用户存储的固化的多个基本操作,复合模版包括多个子步骤,每个子步骤是一种基础模版,复合模版设置时可以设置多个子步骤之间的步骤依赖、容错和并发等关联关系,用户定义基础模版和复合模版并存储供运维作业复用;用户为每一个作业步骤选择了相应的模版后,即完成了运维作业的定义,并创建定义的运维作业。可以理解的是,通过作业步骤对应的模版生成任务时,会把该步骤对应的模版从数据库复制出一份实例来执行,需要说明的是,用户定义作业步骤时,也可以为该作业步骤添加一个没有模版的实例,本实施例不做具体限制。
接收到用户端发送的针对运维作业的执行请求后,获取与运维作业执行请求对应的运维作业数据。
步骤S200,根据所述作业步骤包括的模版实例,调用预置的与所述模版实例对应的实例数据,生成多个任务;
若当前作业步骤用户定义时配置了模版实例,则调用预置的与当前作业步骤包括的模版实例对应的实例数据,生成多个任务。具体的,作为一种实施方式,识别当前作业步骤包括的是基础模版还是复合模版,若识别到当前作业步骤包括的是基础模版,如脚本执行模版,则从数据库复制用户预置的与脚本执行模版对应的基本操作实例“在目标机器上从文件服务器下载脚本文件并执行”来生成多个任务,即把步骤配置的模版从数据库复制出一份实例来生成任务并执行;进一步地,若识别到当前作业步骤包括的是复合模版,检测该复合模版的多个子步骤之间的步骤依赖、容错和并发等关联关系,根据检测到的多个子步骤之间的关联关系和每个子步骤对应的基本操作实例生成多个任务,可以理解的是,该步骤生成的多个任务的执行顺序是由每个子步骤对应的基础模版中任务的执行顺序及多个子步骤之间的关联关系确定的。
进一步地,在其它实施例中,作为一种实施方式,参照图3,图3为图2中步骤S200的细化步骤示意图,具体地,步骤S200包括如下细化步骤:
步骤S201,识别所述作业步骤包括一个模版实例或包括多个具有预设关联关系的模版实例;
识别当前作业步骤包括一个基础模版或包括一个复合模版,一个基础模版对应一个模版实例,一个复合模版包括多个由用户定义的具有一定关联关系的不同的基础模版;复合模版支持其包括的多个基础模版之间的依赖、并发、容错、禁用等特性,适用于复杂的运维场景。
步骤S202,若识别到所述作业步骤包括一个模版实例,则从数据库调用预置的与所述模版实例对应的实例数据,生成多个任务;
若识别到所述作业步骤包括一个基础模版,如脚本执行模版,则从数据库复制与脚本执行模版对应的基础操作实例生成多个可以执行的任务,可以理解的是,该步骤对应的多个任务具有与基本操作对应的执行顺序关系。
步骤S203,若识别到所述作业步骤包括多个具有预设关联关系的模版实例,则从数据库调用预置的与所述作业步骤包括的多个模版实例对应的实例数据,基于所述预设关联关系,生成多个任务。
若识别到所述作业步骤包括一个复合模版,即用户定义的具有一定关联关系的不同的多个基础模版,则从数据库复制与该步骤包括的每个基础模版对应的基础操作实例,结合每个基础模版之间用户定义的关联关系,如依赖、并发等关联关系,生成多个任务,可以理解的是,该步骤对应的多个任务的执行顺序是基于基本操作对应的执行顺序及多个基本操作间的关联关系确定的。
现有技术中,运维作业的执行对象通常是脚本或者命令,无法采用组合或者依赖的方式进行扩展,比如对于复杂的运维场景,如一键切换、批量启停等,无法有效支持,需要涉及较多人工处理,且操作无法固化下来重复使用,本实施例中,通过基础模版及复合模版的设置,将一些可以复用的操作固化下来,并且通过配置操作间的依赖、并发等关联关系,实现任务的组合执行、依赖执行等,大大提升了运维作业的效率。
步骤S300,基于所述预设执行顺序,将所述多个任务递交至消息队列;
用户定义运维作业时,根据运维需求按一定的执行顺序定义多个作业步骤,本实施例中,基于基础模版与复合模版的作业步骤实例化生成任务后,根据每个步骤的执行顺序,依次将每个步骤生成的多个任务递交至消息队列等待被执行。
现有技术中,运维中心各组件之间的耦合度较高,当前作业提交完成后必须等待当前作业执行完毕,才可以开始下一个作业提交,运维中心的中控机器可能成为单点来控制目标机器,这就导致整个运维系统的整体吞吐量不足,执行大量任务时系统速度慢,效率低下。
本实施例通过消息队列把任务提交和任务执行进行解耦,极大的提高了运维系统的吞吐率。
步骤S400,根据任务执行规则,从所述消息队列获取任务并执行获取到的所述任务。
本实施例中,按照用户定义的作业的步骤执行顺序,依次将每个步骤对应的多个任务提交至消息队列等待被执行,对于每一个作业的步骤,如果用户配置的是基础模版的实例,会直接生成相应的任务;如果配置的是复合模版的实例,则按照复合模版的多个子步骤,逐个子步骤按照基础模版实例的规则生成相应的任务,用户基于运维系统的实际情况,可以限制并发数量等,执行时,从消息队列取出任务进行执行。
需要说明的是,默认情况下,当一个任务/子步骤/步骤执行失败即会退出整个作业,并且提示整个作业执行失败,若用户在配置作业时设置了忽略错误,则在执行时,遇到错误则跳过继续往下执行,进一步地,若用户更新了作业中某个任务/子步骤/步骤的禁用,则在执行时跳过该禁用项。
进一步地,作为一种实施方式,以下以当前作业步骤包括的模版实例为复合模版为例,具体说明该步骤的执行流程,首先,检查复合模版包括的多个子步骤是否有循环依赖,比如子步骤1依赖子步骤2,子步骤2依赖子步骤3,子步骤3依赖子步骤1,此种情况称为死循环,若存在循环依赖,则抛出异常提示用户;然后,计算各个子步骤之间的依赖关系,用一个数据集记录每个子步骤被依赖的数量,记作depCount,用一个数据集记录每个子步骤的被依赖者列表,记作downstrem,用一个数据集记录每个子步骤的依赖者列表,记作upstream,用一个集合记录未完成的子步骤,记作unDone,用一个集合记录已完成的子步骤,记作done,初始化多个执行模块用来执行子步骤,把depCount为0的所有子步骤,加入unDone,并交给执行模块来执行;当有子步骤x完成后,把子步骤x从unDone移到done集合,并且把依赖子步骤x的所有子步骤对应的depCount减1,如果其中某个子步骤的depCount在减1后为0,则将该子步骤加入unDone集合,同时,由于子步骤x完成,执行子步骤x的执行模块会从unDone集合中获取另外一个子步骤y来执行;当unDone集合为空,则所有子步骤都已经执行完成,则该作业步骤执行完成。
本实施例通过接收用户端发送的针对运维作业的执行请求,所述运维作业包括若干个具有预设执行顺序的作业步骤;根据所述作业步骤包括的模版实例,调用预置的与所述模版实例对应的实例数据,生成多个任务;基于所述预设执行顺序,将所述多个任务递交至消息队列;根据任务执行规则,从所述消息队列获取任务并执行获取到的所述任务;由此,将批量运维作业中可以通用的操作指令固化,作为模版实例,任务生成时直接调用固化的操作指令对应的实例数据来生成任务提交至消息队列,而不需要运维人员针对每台目标服务器重复输入相同的操作指令来实例化任务,提高运维工作效率的同时降低了运维人员的操作失误率;通过消息队列将运维作业任务提交和执行解耦,解决了现有运维中心各组件之间的耦合度较高,当前作业提交完成后必须等待当前作业执行完毕,才可以开始下一个作业导致的运维工作效率低的问题。
进一步地,提出本发明运维作业控制方法第二实施例。
参照图4,图4为本发明运维作业控制方法第二实施例的流程示意图,所述运维作业控制方法第二实施例与所述运维作业控制方法第一实施例的区别在于,步骤S200,根据所述作业步骤包括的模版实例,调用预置的与所述模版实例对应的实例数据,生成多个任务的步骤之前还包括:
步骤S110,判断所述作业步骤是否包括模版实例;
若是,则进入步骤S200,根据所述作业步骤包括的模版实例,调用预置的与所述模版实例对应的实例数据,生成多个任务。
本实施例中,用户创建作业时,每添加一个步骤可以选择一个基础模版或者一个复合模版,每个模版都会分别克隆出一个实例绑定到步骤上,比如脚本模版的实例就是脚本实例,用户也可以为作业步骤添加一个没有模版的实例。
进一步地,步骤S200,根据所述作业步骤包括的模版实例,调用预置的与所述模版实例对应的实例数据,生成多个任务的步骤之前还包括:
步骤S101,接收用户端发送的分别与不同模版实例对应的多组实例数据;
步骤S102,将所述多组实例数据存储至数据库。
接收用户定义的基础模版及复合模版,作为一种实施方式,定义脚本执行模版对应“在目标机器上从FS下载脚本文件并执行”的基础操作,定义SQL执行模版对应“从文件服务器获取SQL文件,对数据库进行操作”的基础操作实例,其中数据库可以配置多个目标数据库;定义文件分发模版对应“从本地文件夹或者文件服务器获取文件,传输到目标机器的目标目录”的基础操作,定义接口调用模版对应“调用目标http服务”的基础操作实例等,并将定义好的基础模版存储至数据库,每种基本操作可以单独建立模版,也可以组合成为一个多步骤的复合模版,复合模版可以设置子步骤依赖、并发、容错、禁用等特性,便于定义复杂的应用场景,用户配置作业时可以直接为作业步骤选取某个模版,当选取了模版后,该步骤执行时会根据模版复制出一个实例绑定到该步骤上来执行,通过模版生成作业时,会把模版克隆出一份实例来执行,生成的实例的再修改不影响原有的模版,模版可以反复修改使用,也不会影响已经克隆出来的实例,由此,实现了操作固化及复用,模版可以采用组合或者依赖的方式进行扩展,对于复杂的运维场景,如一键切换、批量启停等也可以有效支持,降低人工处理的需求。
进一步地,步骤S100,接收用户端发送的针对运维作业的执行请求的步骤之前还包括:
步骤S103,响应于用户端发送的运维作业创建指令,根据接收到的若干个作业步骤配置及所述若干个作业步骤之间的预设执行顺序,创建运维作业;所述作业步骤配置包括模版实例配置。
用户基于运维需求定义运维作业,一个作业可以包括多个作业步骤,用户创建作业时,每添加一个作业步骤可以为该步骤绑定一个基础模版或者绑定一个复合模版,每个模版都会分别复制出一个实例绑定到步骤上,比如脚本模版的实例就是脚本实例,复制出的实例的变更不影响原有模版对应的操作,数据库中模版对应的操作的变更也不影响已经生成的实例,每个作业步骤可以选择直接绑定基本操作的模版实例,也可以选择绑定复合模版的实例,用户也可以为作业步骤添加一个没有模版的实例。
本实施例通过用户自定义基础模版及复合模版,将运维作业中的基本操作固化便于复用,复合模版支持多个基本操作之间的依赖、并发、容错、禁用等关联关系的设置,适用于运维作业中的复杂场景,解决了现有技术中,运维作业的执行对象通常是脚本或者命令,无法采用组合或者依赖的方式进行扩展,对于复杂的运维场景,如一键切换、批量启停等无法有效支持的问题,本实施例提升运维工作效率的同时,减少了人工处理的需求,节省人力。
进一步地,提出本发明运维作业控制方法第三实施例。
参照图5,图5为本发明运维作业控制方法第三实施例的流程示意图,所述运维作业控制方法第三实施例与所述运维作业控制方法第二实施例的区别在于,步骤S102,将所述多组实例数据存储至数据库的步骤之后还包括:
步骤S104,若检测到针对所述实例数据的第一更新指令,响应于所述第一更新指令,更新所述第一更新指令对应的实例数据。
当接收到用户针对已经固化的基础模版或者复合模版的第一更新指令后,根据第一更新指令对应的更新规则,对相应的基础模版或者复合模版对应的固化操作即模版实例对应的实例数据进行更新,并保存更新后的实例数据至对应的模版实例下,更新后的模版被调用于作业步骤中时,作业任务生成时则根据步骤中配置的最新的模版对应的模版实例来生成任务,需要说明的是,模版的变更及更新不影响依据原有模版已经生成的任务。
进一步地,本实施例中,步骤S103,响应于用户端发送的运维作业创建指令,根据接收到的若干个作业步骤配置及所述若干个作业步骤之间的预设执行顺序,创建运维作业的步骤之后还包括:
步骤S105,若检测到针对所述模版实例配置的第二更新指令,响应于所述第二更新指令,更新所述第二更新指令对应的作业步骤配置包括的模版实例配置。
当接收到用户针对作业步骤配置的第二更新指令后,根据第二更新指令对应的更新规则,对相应的作业步骤对应的步骤实例进行更新,即作业步骤根据模版生成实例后,用户可以根据运维需求修改生成的实例,需要说明的是,作业步骤中根据模版生成的实例的变更及更新,不影响步骤绑定的模版对应的固化操作。
基于本实施例运维作业控制方法,用户定义作业时,为每个作业步骤绑定基础模版或复合模版,绑定模版后的作业步骤在生成任务时直接复制模版对应的实例数据来生成任务实例,基础模版及复合模版可以依据不同的运维环境进行修改或更新,基础模版及复合模版的更新不影响绑定该模版的步骤已经生成的任务;而依据步骤绑定的模版生成任务实例后,对生成的任务实例按需求进行修改也不影响该步骤绑定的原有模版对应的固化操作,只是修改了该步骤对应的实例,由此,增加了本实施例运维作业控制方法的适用范围,提升了作业步骤配置的灵活性。
进一步地,提出本发明运维作业控制方法第四实施例。
参照图6,图6为本发明运维作业控制方法第四实施例的流程示意图,所述运维作业控制方法第四实施例与所述运维作业控制方法第一、第二或第三实施例的区别在于,步骤S400,根据任务执行规则,从所述消息队列获取任务并执行获取到的所述任务的步骤之后还包括:
步骤S500,发送任务执行状态和/或作业执行状态至所述用户端。
本实施例中,每个任务执行、每个作业执行完毕后返回执行状态提醒于用户端,具体地,每个任务的执行状态包括完成或失败两种状态,每个作业的执行状态包括完成、部分完成或失败三种状态;当前作业中全部步骤成功执行,则提示当前作业完成信息于用户端;当前作业中部分步骤成功执行、其余步骤失败,则提示当前作业部分完成信息于用户端;当前作业中全部步骤均执行失败,则提示当前作业失败信息于用户端。
进一步地,每个步骤包括的所有任务都成功该步骤标记为成功执行,该步骤包括的所有任务有失败的任务,有成功执行的任务时标记为部分完成,否则计为该步骤执行失败。
本实施例中,通过提示任务、作业的执行状态于用户端,用户可以及时跟进运维作业的执行情况,确保运维作业的顺利进行,保证运维系统中目标机器的服务可靠性。
此外,本发明实施例还提出一种运维作业控制装置,所述运维作业控制装置包括:
交互模块,用于在接收到用户端发送的针对运维作业的执行请求后,根据所述运维作业的作业步骤包括的模版实例,调用预置的与所述模版实例对应的实例数据,生成多个任务;其中,所述运维作业包括若干个具有预设执行顺序的作业步骤;
调度模块,用于基于所述预设执行顺序,将所述多个任务递交至消息队列;
执行模块,用于根据任务执行规则,从所述消息队列获取任务并执行获取到的所述任务。
本实施例运维作业控制装置采用异步设计,其中,装置包括至少一个交互模块、至少一个调度模块和至少一个执行模块,通过消息队列把作业提交和作业执行进行解耦,极大提高了作业的执行效率,同时不影响作业的响应。同时交互模块、调度模块、执行模块都可以按需增加,满足装置的高可用性。
以下以当前作业步骤包括的模版实例为复合模版为例,具体说明该步骤的执行流程,复合模版配置时可以配置某个子步骤依赖的其他多个子步骤,用户可以设置子步骤的并发数量,作业执行时,首先检查复合模版包括的多个子步骤是否有循环依赖,比如子步骤1依赖子步骤2,子步骤2依赖子步骤3,子步骤3依赖子步骤1,此种情况称为死循环,若存在循环依赖,则抛出异常提示用户;然后,计算各个子步骤之间的依赖关系,用一个数据集记录每个子步骤被依赖的数量,记作depCount,用一个数据集记录每个子步骤的被依赖者列表,记作downstrem,用一个数据集记录每个子步骤的依赖者列表,记作upstream,用一个集合记录未完成的子步骤,记作unDone,用一个集合记录已完成的子步骤,记作done,初始化多个执行模块用来执行子步骤,把depCount为0的所有子步骤,加入unDone,并交给执行模块来执行;当有子步骤x完成后,把子步骤x从unDone移到done集合,并且把依赖子步骤x的所有子步骤对应的depCount减1,如果其中某个子步骤的depCount在减1后为0,则将该子步骤加入unDone集合,同时,由于子步骤x完成,执行子步骤x的执行模块会从unDone集合中获取另外一个子步骤y来执行;当unDone集合为空,则所有子步骤都已经执行完成,则该作业步骤执行完成。
需要说明的是,默认情况下,当一个任务/子步骤/步骤执行失败即会退出整个作业,并且提示整个作业执行失败,若用户在配置作业时设置了忽略错误,则在执行时,遇到错误则跳过继续往下执行,进一步地,若用户更新了作业中某个任务/子步骤/步骤的禁用,则在执行时跳过该禁用项。
作为一种实施方式,调度模块提交任务至消息队列后,返回提交状态给交互模块,执行模块监听消息队列,并取出任务进行消费,执行单个任务,并把执行结果写入数据库,并返回执行结果至调度模块,调度模块将此执行结果返回交互模块,执行模块执行单个任务,支持使用salt-stack、puppet等系统。
交互模块整合所有任务的执行状态,依据下述计算规则计算出每个步骤的状态,最终得到整个作业的状态,计算状态的规则是:
若所有任务都成功则在交互模块提示该步骤成功;有失败的任务、也有成功的任务时,则在交互模块提示该步骤为部分完成,否则在交互模块提示该步骤为失败。
所有步骤都成功在交互模块提示整个作业成功执行;有失败的步骤、有成功的步骤时,在交互模块提示该作业为部分完成,否则在交互模块提示该作业执行失败。
优选地,所述交互模块包括:
接收单元,用于接收用户端发送的针对运维作业的执行请求,所述运维作业包括若干个具有预设执行顺序的作业步骤;
识别单元,用于识别所述作业步骤包括一个模版实例或包括多个具有预设关联关系的模版实例;
第一任务生成单元,用于在所述识别单元识别到所述作业步骤包括一个模版实例后,从数据库调用预置的与所述模版实例对应的实例数据,生成多个任务;
第二任务生成单元,用于在所述识别单元识别到所述作业步骤包括多个具有预设关联关系的模版实例后,从数据库调用预置的与所述作业步骤包括的多个模版实例对应的实例数据,基于所述预设关联关系,生成多个任务。
优选地,所述交互模块还包括:
判断单元,用于在所述接收单元接收到用户端发送的针对运维作业的执行请求后,判断所述运维作业对应的作业步骤是否包括模版实例,并将判断结果发送至所述识别单元;
所述识别单元,还用于在接收到所述判断单元发送的判断结果为“是”后,识别所述作业步骤包括一个模版实例或包括多个具有预设关联关系的模版实例。
优选地,所述交互模块还包括:
模版创建单元,用于接收用户端发送的分别与不同模版实例对应的多组实例数据,并将所述多组实例数据存储至数据库。
优选地,所述交互模块还包括:
作业创建单元,用于在接收到用户端发送的运维作业创建指令后,根据接收到的若干个作业步骤配置及所述若干个作业步骤之间的预设执行顺序,创建运维作业;所述作业步骤配置包括模版实例配置。
优选地,所述交互模块还包括:
模版更新单元,用于在检测到针对所述实例数据的第一更新指令后,响应于所述第一更新指令,更新所述第一更新指令对应的实例数据。
优选地,所述交互模块还包括:
作业更新单元,用于在检测到针对所述模版实例配置的第二更新指令后,响应于所述第二更新指令,更新所述第二更新指令对应的作业步骤配置包括的模版实例配置。
优选地,所述运维作业控制装置还包括:
状态反馈模块,用于发送任务执行状态和/或作业执行状态至所述用户端。
状态反馈模块可以设于执行模块内或与执行模块连接,用于在执行模块执行完一个任务后,即将该任务的任务执行状态发送至交互模块,交互模块结合任务执行状态计算得到步骤、作业的执行状态并提示于用户。
在其它实施例中,区别于本实施例,作为一种实施方式,交互模块在设定的时间间隔向执行模块发出状态询问请求,执行模块在接收到交互模块的状态询问请求后,将间隔时间内作业的执行状态发送至交互模块,本实施例不做具体限制。
本实施例提出的运维作业控制装置各个模块运行时实现如上所述的运维作业控制方法的步骤,在此不再赘述。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有运维作业控制程序,所述运维作业控制程序被处理器执行时实现如上所述的运维作业控制方法的步骤。
其中,在所述处理器上运行的运维作业控制程序被执行时所实现的方法可参照本发明运维作业控制方法各个实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (15)

1.一种运维作业控制方法,其特征在于,所述运维作业控制方法包括以下步骤:
接收用户端发送的针对运维作业的执行请求,所述运维作业包括若干个具有预设执行顺序的作业步骤;
根据所述作业步骤包括的模版实例,调用预置的与所述模版实例对应的实例数据,生成多个任务;
基于所述预设执行顺序,将所述多个任务递交至消息队列;
根据任务执行规则,从所述消息队列获取任务并执行获取到的所述任务。
2.如权利要求1所述的运维作业控制方法,其特征在于,所述根据所述作业步骤包括的模版实例,调用预置的与所述模版实例对应的实例数据,生成多个任务的步骤包括:
识别所述作业步骤包括一个模版实例或包括多个具有预设关联关系的模版实例;
若识别到所述作业步骤包括一个模版实例,则从数据库调用预置的与所述模版实例对应的实例数据,生成多个任务;
若识别到所述作业步骤包括多个具有预设关联关系的模版实例,则从数据库调用预置的与所述作业步骤包括的多个模版实例对应的实例数据,基于所述预设关联关系,生成多个任务。
3.如权利要求1所述的运维作业控制方法,其特征在于,所述根据所述作业步骤包括的模版实例,调用预置的与所述模版实例对应的实例数据,生成多个任务的步骤之前还包括:
判断所述作业步骤是否包括模版实例;
若是,则进入步骤:根据所述作业步骤包括的模版实例,调用预置的与所述模版实例对应的实例数据,生成多个任务。
4.如权利要求1所述的运维作业控制方法,其特征在于,所述根据所述作业步骤包括的模版实例,调用预置的与所述模版实例对应的实例数据,生成多个任务的步骤之前还包括:
接收用户端发送的分别与不同模版实例对应的多组实例数据;
将所述多组实例数据存储至数据库。
5.如权利要求4所述的运维作业控制方法,其特征在于,所述将所述多组实例数据存储至数据库的步骤之后还包括:
若检测到针对所述实例数据的第一更新指令,响应于所述第一更新指令,更新所述第一更新指令对应的实例数据。
6.如权利要求1所述的运维作业控制方法,其特征在于,所述接收用户端发送的针对运维作业的执行请求的步骤之前还包括:
响应于用户端发送的运维作业创建指令,根据接收到的若干个作业步骤配置及所述若干个作业步骤之间的预设执行顺序,创建运维作业;所述作业步骤配置包括模版实例配置。
7.如权利要求6所述的运维作业控制方法,其特征在于,所述响应于用户端发送的运维作业创建指令,根据接收到的若干个作业步骤配置及所述若干个作业步骤之间的预设执行顺序,创建运维作业的步骤之后还包括:
若检测到针对所述模版实例配置的第二更新指令,响应于所述第二更新指令,更新所述第二更新指令对应的作业步骤配置包括的模版实例配置。
8.如权利要求1-7中任一项所述的运维作业控制方法,其特征在于,所述根据任务执行规则,从所述消息队列获取任务并执行获取到的所述任务的步骤之后还包括:
发送任务执行状态和/或作业执行状态至所述用户端。
9.一种运维作业控制装置,其特征在于,所述运维作业控制装置包括:
交互模块,用于在接收到用户端发送的针对运维作业的执行请求后,根据所述运维作业的作业步骤包括的模版实例,调用预置的与所述模版实例对应的实例数据,生成多个任务;其中,所述运维作业包括若干个具有预设执行顺序的作业步骤;
调度模块,用于基于所述预设执行顺序,将所述多个任务递交至消息队列;
执行模块,用于根据任务执行规则,从所述消息队列获取任务并执行获取到的所述任务。
10.如权利要求9所述的运维作业控制装置,其特征在于,所述交互模块包括:
接收单元,用于接收用户端发送的针对运维作业的执行请求,所述运维作业包括若干个具有预设执行顺序的作业步骤;
识别单元,用于识别所述作业步骤包括一个模版实例或包括多个具有预设关联关系的模版实例;
第一任务生成单元,用于在所述识别单元识别到所述作业步骤包括一个模版实例后,从数据库调用预置的与所述模版实例对应的实例数据,生成多个任务;
第二任务生成单元,用于在所述识别单元识别到所述作业步骤包括多个具有预设关联关系的模版实例后,从数据库调用预置的与所述作业步骤包括的多个模版实例对应的实例数据,基于所述预设关联关系,生成多个任务。
11.如权利要求9所述的运维作业控制装置,其特征在于,所述交互模块还包括:
判断单元,用于在所述接收单元接收到用户端发送的针对运维作业的执行请求后,判断所述运维作业对应的作业步骤是否包括模版实例,并将判断结果发送至所述识别单元;
所述识别单元,还用于在接收到所述判断单元发送的判断结果为“是”后,识别所述作业步骤包括一个模版实例或包括多个具有预设关联关系的模版实例。
12.如权利要求9所述的运维作业控制装置,其特征在于,所述交互模块还包括:
模版创建单元,用于接收用户端发送的分别与不同模版实例对应的多组实例数据,并将所述多组实例数据存储至数据库。
13.如权利要求9-12任一项所述的运维作业控制装置,其特征在于,所述交互模块还包括:
作业创建单元,用于在接收到用户端发送的运维作业创建指令后,根据接收到的若干个作业步骤配置及所述若干个作业步骤之间的预设执行顺序,创建运维作业;所述作业步骤配置包括模版实例配置。
14.一种运维作业控制设备,其特征在于,所述运维作业控制设备包括存储器、处理器和存储在所述存储器上并可在所述处理器上运行的运维作业控制程序,所述运维作业控制程序被所述处理器执行时实现如权利要求1至8中任一项所述的运维作业控制方法的步骤。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有运维作业控制程序,所述运维作业控制程序被处理器执行时实现如权利要求1至8中任一项所述的运维作业控制方法的步骤。
CN201811652725.3A 2018-12-29 2018-12-29 运维作业控制方法、装置、设备及计算机可读存储介质 Pending CN109740934A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811652725.3A CN109740934A (zh) 2018-12-29 2018-12-29 运维作业控制方法、装置、设备及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811652725.3A CN109740934A (zh) 2018-12-29 2018-12-29 运维作业控制方法、装置、设备及计算机可读存储介质

Publications (1)

Publication Number Publication Date
CN109740934A true CN109740934A (zh) 2019-05-10

Family

ID=66362913

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811652725.3A Pending CN109740934A (zh) 2018-12-29 2018-12-29 运维作业控制方法、装置、设备及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN109740934A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110705724A (zh) * 2019-09-26 2020-01-17 浙江九州云信息科技有限公司 一种可重用自动化运维管理系统
CN110704183A (zh) * 2019-09-18 2020-01-17 深圳前海大数金融服务有限公司 数据处理方法、系统及计算机可读存储介质
CN111008035A (zh) * 2019-11-27 2020-04-14 北京宝兰德软件股份有限公司 一种软件运维方法、电子设备及存储介质
CN111208995A (zh) * 2019-12-20 2020-05-29 中国建设银行股份有限公司 Ibm主机作业的自动生成方法、系统、装置及存储介质
CN111401825A (zh) * 2020-02-12 2020-07-10 中国建设银行股份有限公司 一种实例化方法和装置
CN112181405A (zh) * 2020-09-29 2021-01-05 中国建设银行股份有限公司 一种流程的生成方法、装置、设备及可读存储介质
CN113553334A (zh) * 2021-07-23 2021-10-26 中信银行股份有限公司 通过组合变更模版执行变更的方法、装置、终端设备及存储介质
CN113590290A (zh) * 2021-07-30 2021-11-02 中国工商银行股份有限公司 主机双活系统的运维方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105978728A (zh) * 2016-06-20 2016-09-28 深圳前海微众银行股份有限公司 智能监控系统及业务指标的监控方法
CN107870772A (zh) * 2017-10-09 2018-04-03 深圳前海微众银行股份有限公司 跨环境的应用部署方法、平台、系统及可读存储介质
CN108416449A (zh) * 2018-02-05 2018-08-17 北京奇艺世纪科技有限公司 一种运维方法和装置
CN108536532A (zh) * 2018-04-23 2018-09-14 中国农业银行股份有限公司 一种批量任务处理方法及系统
CN108664519A (zh) * 2017-04-01 2018-10-16 北京京东尚科信息技术有限公司 业务规则管理的方法、装置、电子设备和存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105978728A (zh) * 2016-06-20 2016-09-28 深圳前海微众银行股份有限公司 智能监控系统及业务指标的监控方法
CN108664519A (zh) * 2017-04-01 2018-10-16 北京京东尚科信息技术有限公司 业务规则管理的方法、装置、电子设备和存储介质
CN107870772A (zh) * 2017-10-09 2018-04-03 深圳前海微众银行股份有限公司 跨环境的应用部署方法、平台、系统及可读存储介质
CN108416449A (zh) * 2018-02-05 2018-08-17 北京奇艺世纪科技有限公司 一种运维方法和装置
CN108536532A (zh) * 2018-04-23 2018-09-14 中国农业银行股份有限公司 一种批量任务处理方法及系统

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110704183A (zh) * 2019-09-18 2020-01-17 深圳前海大数金融服务有限公司 数据处理方法、系统及计算机可读存储介质
CN110704183B (zh) * 2019-09-18 2021-01-08 深圳前海大数金融服务有限公司 数据处理方法、系统及计算机可读存储介质
CN110705724A (zh) * 2019-09-26 2020-01-17 浙江九州云信息科技有限公司 一种可重用自动化运维管理系统
CN111008035A (zh) * 2019-11-27 2020-04-14 北京宝兰德软件股份有限公司 一种软件运维方法、电子设备及存储介质
CN111008035B (zh) * 2019-11-27 2023-07-04 北京宝兰德软件股份有限公司 一种软件运维方法、电子设备及存储介质
CN111208995A (zh) * 2019-12-20 2020-05-29 中国建设银行股份有限公司 Ibm主机作业的自动生成方法、系统、装置及存储介质
CN111401825A (zh) * 2020-02-12 2020-07-10 中国建设银行股份有限公司 一种实例化方法和装置
CN111401825B (zh) * 2020-02-12 2023-07-07 中国建设银行股份有限公司 一种实例化方法和装置
CN112181405A (zh) * 2020-09-29 2021-01-05 中国建设银行股份有限公司 一种流程的生成方法、装置、设备及可读存储介质
CN113553334A (zh) * 2021-07-23 2021-10-26 中信银行股份有限公司 通过组合变更模版执行变更的方法、装置、终端设备及存储介质
CN113590290A (zh) * 2021-07-30 2021-11-02 中国工商银行股份有限公司 主机双活系统的运维方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
CN109740934A (zh) 运维作业控制方法、装置、设备及计算机可读存储介质
CN103679401B (zh) 一种流程控制方法、服务器、客户端及系统
CN107948006B (zh) 一种虚拟化网络功能的编排方法及装置
CN110493067A (zh) 一种api网关服务更新的方法及装置
CN110333940A (zh) 基于条件的任务调度方法、装置、设备及存储介质
CN110175677A (zh) 自动更新方法、装置、计算机设备及存储介质
CN111124636A (zh) 一种流程编排引擎及其控制方法
CN110347494A (zh) 上下文信息管理方法、装置、系统及计算机可读存储介质
CN108664313A (zh) 镜像文件在线制作方法、装置、服务器、系统及存储介质
CN107608746A (zh) 一种多开应用的优化方法和装置
CN108399331A (zh) 应用进程试用方法和系统
CN110502530A (zh) 数据库函数调用方法、系统、计算机设备及存储介质
US8051407B2 (en) Method for controlling a software maintenance process in a software system landscape and computer system
US20120240103A1 (en) Method and system for implementing self-configurable software components
CN112948099B (zh) 任务发布流程方法、装置、计算机设备和存储介质
CN102387264B (zh) 呼叫控制策略的处理方法、装置及呼叫中心
KR101899298B1 (ko) 클라우드 및 가상화 기반의 프로세스 자동화 처리 시스템 및 그 처리 방법
CN109669785A (zh) 终端应用的页面分享方法、装置、服务器及存储介质
WO2007006860A1 (en) Method and device arrangement for managing a user application/device management server/client device environment
CN110286926B (zh) 一种工业机器更新方法及装置
Barbier et al. Software adaptation: classification and a case study with state chart xml
CN107832162A (zh) 远程调用ModelCenter软件实现多学科设计优化的方法
CN112418796A (zh) 子流程节点激活方法、装置、电子设备及存储介质
Kusek et al. Mobile agent based software operation and maintenance
Pan et al. RETRACTED ARTICLE: Research on process customization technology for intelligent transportation cloud service platform

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20190510

RJ01 Rejection of invention patent application after publication