专利汇可以提供基于作业流的分布式调度系统及应用方法专利检索,专利查询,专利分析的服务。并且本 发明 提供一种基于作业流的分布式调度系统及应用方法,包括:逻辑调度模 块 、触发器管理模块、 数据库 交互模块、服务 接口 模块、作业分发模块、作业应答模块、作业流资源库模块以及执行代理终端模块。其中逻辑调度模块完成作业流及作业的逻辑处理和调度,触发器管理模块完成作业流的触发器新增、触发和删除,数据库交互模块完成系统与数据库之间数据交互,服务接口模块提供对作业流、作业进行控制的对外服务接口,作业分发模块和作业应答模块用于完成对作业的分发和执行代理终端模块执行作业结果的接收、更新,作业流资源库模块存储从数据库读取的作业流配置属性。分担了单点的作业执行压 力 ,提高了作业调度与执行的效率。,下面是基于作业流的分布式调度系统及应用方法专利的具体信息内容。
1.一种基于作业流的分布式调度系统,其特征在于,包括:逻辑调度模块、触发器管理模块、数据库交互模块、服务接口模块、作业分发模块、作业应答模块、作业流资源库模块以及执行代理终端模块;
所述逻辑调度模块用于完成作业流及作业的逻辑处理和调度;
-当一个作业流的触发器触发时,所述逻辑调度模块收到触发消息,并判断此时所述作业流的业务逻辑是否符合触发条件;
-当一个作业执行结果被传递到所述逻辑调度模块时,所述逻辑调度模块根据作业执行结果及作业流属性判定作业流结束,或者调度作业流中所述作业的后续作业;
-当人工干预触发作业流或作业操作时,作业流触发请求被传递到所述逻辑调度模块,所述逻辑调度模块根据作业流属性,判定所述作业流触发请求是否有效,若有效则触发作业流或作业操作;
所述触发器管理模块用于完成作业流的触发器新增、触发和删除,所述触发器管理模块是基于作业流的调度系统并根据作业流进行配置,其中,一个作业流能够对应多个触发器,且所述触发器为时间条件的配置;
-当时间条件满足触发器预设条件时,触发器触发作业流调度;
-当人工触发作业流时,逻辑调度模块为请求创建临时触发器进行调度,在执行结束后删除该触发器;
所述数据库交互模块用于完成分布式调度系统与数据库之间数据交互,其中所述数据库中存储有关于作业流属性配置的全部信息;
-当分布式调度系统启动时从数据库读取所述属性配置的信息;
-当分布式调度系统调度运行时,所述数据库实时存储关于作业流及作业的各种属性、状态信息,且保持所述属性信息与数据库中一致;
所述服务接口模块用于提供对作业流、作业进行控制的对外服务接口,通过标准的SOAP协议调用,并且提供人工对所述作业流的干预以及查询所述作业流的信息;
所述作业分发模块用于完成作业进入调度进程后的分发,根据所述作业的配置属性,将作业执行指令分发到特定的执行代理终端模块,同时发送消息以判断各个执行代理终端模块的状态,且所述作业分发模块与执行代理终端模块所处的物理位置、操作系统类型无关;
所述作业应答模块用于完成对执行代理终端模块作业执行结果的接收,以及接收应答后对作业状态属性信息的更新;
所述作业流资源库模块用于存储从数据库读取的作业流配置属性,作业流配置属性包括作业流的基础配置以及其中每个作业的基本配置信息,并在系统运行过程中对所述配置属性进行实时更新;
所述执行代理终端模块用于接收逻辑调度模块发送的作业执行请求,根据所述作业执行请求执行作业命令,并将结果返回给作业应答模块,整个分布式调度系统包含多个执行代理终端模块,且所述多个执行代理终端模块能够运行在不同的物理节点上。
2.一种权利要求1所述的基于作业流的分布式调度系统的应用方法,其特征在于,包括如下步骤:
步骤1:启动分布式调度系统服务端;
步骤2:在分布式调度系统服务端上申请创建作业流;
步骤3:根据创建的作业流进行触发;
步骤4:作业流触发成功后进入作业应答,执行作业;
步骤5:对作业流创建人工控制服务;
步骤6:分布式调度系统执行完作业后,进行作业分发。
3.根据权利要求2所述的基于作业流的分布式调度系统的应用方法,其特征在于,所述步骤1包括:
步骤1.1:在分布式调度系统中加载资源配置,包括数据库资源、对外服务接口、队列资源、日志以及控制时间间隔设置;
步骤1.2:根据所述资源配置建立数据库连接,完成数据库交互模块初始化;
步骤1.3:启动逻辑调度模块,完成请求队列初始化;
步骤1.4:根据所述资源配置读取作业流配置,调用数据库交互模块,读取数据库中已配置的作业流,同时读取各作业流内作业信息,保存到作业流资源库模块中;
步骤1.5:启动触发器管理模块,根据作业流资源库模块中作业流触发配置,为作业流创建触发器并进行管理,当触发器被触发时触发作业流,向逻辑调度模块发调度请求;
步骤1.6:启动服务接口模块,启动web服务,使用户能够通过网络调用命令行以及管理UI,并对作业流及作业进行查询、控制;
步骤1.7:启动作业分发模块,包括启动接收逻辑调度模块通知作业分发线程、定时检测作业分发事件线程、执行代理终端模块状态检测线程、作业分发线程池;
步骤1.8:启动作业应答模块,启动接收执行代理终端模块作业结果的服务以及启动检测事件状态通知调度模块的线程;
其中,若所述逻辑调度模块、触发器管理模块、数据库交互模块、服务接口模块、作业分发模块、作业应答模块、作业流资源库模块以及执行代理终端模块中任一模块启动失败,则记录失败日志。
4.根据权利要求2所述的基于作业流的分布式调度系统的应用方法,其特征在于,所述步骤2包括:
步骤2.1:用户经过授权登入系统,申请创建作业流,系统检验用户权限,通过则授权作业流创建;
步骤2.2:根据用户创建的作业流,配置所述作业流的全局属性和触发策略;
步骤2.3:根据用户指令将有需要的作业添加到作业流中;
步骤2.4:若有需要的作业在作业模版中不存在,则进入步骤2.5;若有需要的作业在作业模板中已经存在,则选择作业模板并进入步骤2.9;
步骤2.5:新建作业模版时要选择执行代理终端模块,若有需要的执行代理终端模块不存在,则进入步骤2.6;
步骤2.6:新增执行代理终端模块时,将执行代理终端模块划分到某个应用系统,选择已划分的所述应用系统,若没有合适的应用系统,则新增应用系统;
步骤2.7:根据应用系统基本信息,包括系统代号、负责人、基本功能说明创建新增应用系统,所述应用系统根据用户需要对执行代理终端模块进行划分;
步骤2.8:作业模版提交成功后编辑作业流依次选择需要的作业模版,若没有合适的作业模板,则新增作业模版;
步骤2.9:选择所有需要的作业模版后,对这些作业模版配置仅属于所述作业流的属性,其中所述属性包括:作业前后依赖关系、执行超时条件、报警条件;
步骤2.10:编辑作业流结束后用户能够通过作业流逻辑图形展示来检查作业流是否配置正确,确认正确后需要用户激活作业流,激活作业流则该作业流被加载到系统作业流资源库,并进入自动调度。
5.根据权利要求2所述的基于作业流的分布式调度系统的应用方法,其特征在于,所述步骤3包括:
步骤3.1:触发器管理模块中作业流的触发器被触发,其中所述触发包括作业流定时配置的触发器被触发和人工触发时临时创建的触发器即时触发;
步骤3.2:根据触发器关联的作业流,为作业流创建触发请求,且所述触发请求被发送给逻辑调度模块;
步骤3.3:根据触发请求中的关键字,从作业流资源库查找是否存在该作业流;若存在该作业流,则进入步骤3.4;若不存在该作业流,则进入步骤3.5;
步骤3.4:根据作业流资源库中作业流状态信息判断该作业流能否被触发,当该作业流处于运行或暂停状态时触发器不能被触发;
步骤3.5:当作业流未存在于作业流资源库中或该作业流不能被触发时,则触发失败;
当作业流未在作业流资源库中找到的情况出现于人工触发新增的作业流时,该作业流未激活,没有被加载到作业流资源库中;
步骤3.6:对触发之前的作业流配置进行备份,若触发失败,则作业流能够恢复到之前的配置;
步骤3.7:重置作业流内所有作业,将作业流内作业历史状态、关联的事件置为初始状态;
步骤3.8:从作业流资源库获取该作业流的初始作业,所述初始作业还包括Box作业,所述Box作业能够包含多个作业流分支,用于作业有多个依赖作业的情况;若初始作业是Box作业,则需获取Box作业内每个分支流的初始作业;
步骤3.9:为获取到的初始作业创建事件,所述事件用于作业后续的分发、执行及应答处理;
步骤3.10:若步骤3.7、步骤3.8、骤3.9失败,则恢复步骤3.6中备份的作业流配置;
步骤3.11:当作业流触发失败且所述作业流中作业均被重置时,记录错误,并返回错误;
步骤3.12:作业流触发成功后,通知分发模块分发作业。
6.根据权利要求2所述的基于作业流的分布式调度系统的应用方法,其特征在于,所述步骤4包括:
步骤4.1:当执行代理终端模块执行作业后,将作业执行结果返回给作业应答模块;
步骤4.2:作业应答模块接收到执行代理终端模块的作业执行结果,并从所述作业执行结果消息中获取关联的事件,更新事件状态;
步骤4.3:当事件状态变更完成后,作业应答模块通知逻辑调度模块作业执行结束;
步骤4.4:逻辑调度模块收到作业应答模块通知后,从通知消息中获取关联的作业流和作业;
步骤4.5:从作业流资源库查找是否存在作业应答模块通知消息中的作业流;
步骤4.6:从作业流资源库查找是否存在作业应答模块通知消息中的作业;
步骤4.7:若找到关联的作业流及作业,将从作业执行结果消息中获取的关联事件与作业应答模块通知消息中的事件进行比较;
步骤4.8:通知消息中的作业流或者作业没有在作业流资源库中存在时,或者作业流资源库中作业关联事件与通知消息在事件不匹配时,判定该事件以及作业执行结果为过时数据,该事件被丢弃,作业执行结果被忽略;
步骤4.9:当作业流、作业、事件均匹配时,更新作业状态信息;
步骤4.10:记录作业执行历史记录;
步骤4.11:当且仅当作业执行结果为失败且作业流配置为该作业失败立即告警暂停时,立即暂停该作业流,标记作业失败并报警;
步骤4.12:当作业执行结束且无需报警时,从作业流资源库查找该作业流中当前作业是否有后续作业需要调度;若当前作业包含在Box作业中,则需要判断该Box作业是否结束以及结束状态;若后续作业为Box作业,则需要获取该Box的起始作业列表作为后续作业;
步骤4.13:当无法找到后续作业时,检查作业流中所有作业,有任意作业处于中间状态没有结束时不能判定结束,此时该作业流需要等待所有分支均为初始化状态,即无需调度的分支,或没有后续的状态时才能判定结束;
步骤4.14:若当前作业无后续作业,且该作业流没有其他作业处于中间状态时,判定作业流已经执行结束,根据作业流中作业配置判定作业流的执行结果是成功或者失败;若有后续作业需要调度,根据获取到的后续作业或作业列表,为后续作业创建事件;
步骤4.15:更新后续作业的状态,进入运行状态,所述后续作业的状态是作业流结束判定的一个参照条件;
步骤4.16:逻辑调度模块通知作业分发模块有待处理事件,作业分发模块根据事件分发作业到相应的执行代理终端模块进行处理。
7.根据权利要求2所述的基于作业流的分布式调度系统的应用方法,其特征在于,所述步骤5包括:
步骤5.1:获取控制接口,对作业流进行查询、激活与冻结、启动与停止、暂停与恢复操作,或者对作业流内作业进行启动与停止操作;其中获取控制接口的方法包括:系统管理UI、系统控制台命令、网络SOAP服务;
步骤5.2:步骤5.1中任一种控制方式,都能够将控制请求发送至系统的服务接口模块;
步骤5.3:服务接口模块接收到服务请求,根据服务请求所调用的作业流组织相应的请求消息,传递给逻辑调度模块,同时等待逻辑调度模块的处理结果,若等待超时,超时后逻辑调度模块返回的调用超时结果将被丢弃;
步骤5.4:逻辑调度模块根据作业流是否存在、作业流当前状态是否符合控制条件来判断触发请求是否有效,其中控制条件如下:
A:当前作业流激活状态无法再次激活,当前冻结状态无法再次冻结;
B:当前作业流运行或暂停状态无法再次触发运行;
C:已经结束或处于初始状态的作业流无法停止;
D:只有处于运行状态的作业流才能被暂停,只有处于被暂停状态的作业流才能够被恢复;
E:处于运行状态的作业流,只有失败状态的作业可以被人工触发运行;而处于结束状态的作业流,其中任意一个作业能够被触发,整个作业流能够继续执行;
F:只有处于运行状态的作业才能够被停止;
步骤5.5:通过状态判定,逻辑调度模块则对指定的作业流进行更新,若是触发作业流或作业,则会创建作业调度事件,并通知分发;
步骤5.6:逻辑调度模块返回控制结果,再由服务接口模块将结果返回给调用方。
8.根据权利要求2所述的基于作业流的分布式调度系统的方法,其特征在于,所述步骤6包括:
步骤6.1:作业分发模块根据触发检查是否有待处理事件,其中所述触发包括逻辑调度模块发出的通知消息触发和作业分发模块的定时触发;
步骤6.2:若有待处理事件,则作业分发模块取出所有待处理事件,若没有待处理事件,则等待下次检查;
步骤6.3:取出所有待处理事件后更新这些事件为已读取状态,防止再次检索重复处理;
步骤6.4:根据事件中的信息,将事件交由分发线程池进行作业分发;
步骤6.5:若作业分发失败,则检查是否超过设定的重发限制,所述重发限制是为防止故障事件被永远地重发下去而占用分发线程使正常事件得不到及时处理;
步骤6.6:当重发已达到限制次数时,则标记发送失败,不再进行重发;当未达到重发限制时,则继续进行重发直到发送成功或达到重发限制;若发送成功,则标记事件已发送状态,防止被再次发送;
步骤6.7:执行代理终端模块接收到作业后,检查所述作业是否有效,若作业指令异常,则返回相应的作业错误应答;
步骤6.9:通过所述检查后,执行代理终端模块启动作业执行进程并等待执行结束将结果返回。
标题 | 发布/更新时间 | 阅读量 |
---|---|---|
一种即时检验装置 | 2020-05-11 | 807 |
液相检测芯片 | 2020-05-16 | 740 |
建立即时通信关系的方法及其系统 | 2020-05-14 | 227 |
用于收集生物样品的医学装置 | 2020-05-16 | 126 |
用于收集生物样品的医学装置 | 2020-05-16 | 374 |
用于阻断未经请求的即时消息的方法,装置和系统 | 2020-05-14 | 400 |
一种即时通讯服务器监控数据的分发方法和装置 | 2020-05-15 | 386 |
一种面向即时检验的多通道心梗标志物测定仪 | 2020-05-13 | 702 |
一种全自动即时检验仪用检测卡堆栈 | 2020-05-13 | 829 |
一种改进的全自动即时检验仪 | 2020-05-12 | 534 |
高效检索全球专利专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。
我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。
专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。