[发明专利]一种分布式作业调度方法有效
申请号: | 201910902602.9 | 申请日: | 2019-09-24 |
公开(公告)号: | CN110688211B | 公开(公告)日: | 2023-06-06 |
发明(设计)人: | 谢延泽;李佳明;周勇 | 申请(专利权)人: | 四川新网银行股份有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/50 |
代理公司: | 成都智言知识产权代理有限公司 51282 | 代理人: | 徐金琼 |
地址: | 610094 四川省成都市成都*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 作业 调度 方法 | ||
本发明公开了一种分布式作业调度方法,属于分布式任务调度框架下的作业编排技术领域,解决现有技术中的依赖作业只能有一个分片,从而造成作业的水平扩容被牺牲的问题。本发明根据应用场景,将每个作业进行分片,得到作业分片;在每个作业中都有一个用于描述其依赖作业的字段,若作业不是起始作业,在字段中配置依赖作业的相关信息,配置后得到所有JAVA依赖作业,所有JAVA依赖作业包括起始作业和配置了字段的JAVA依赖作业;基于作业分片和所有JAVA依赖作业,周期性触发各JAVA依赖作业执行逻辑判断,根据判断结果执行或不执行作业,直到整个流程中所有作业正常完成。本发明用于分布式作业调度。
技术领域
一种分布式作业调度方法,用于分布式作业调度,属于分布式任务调度框架下的作业编排技术领域。
背景技术
现有技术中,把定时任务通过集群的方式进行管理调度,并采用分布式部署,保证系统的高可用,提高了容错。这就是分布式作业调度平台可以实现的。
现有技术中,Saturn 3.3.0已经有自己的依赖作业实现,其实现方案如下:
1) 通过作业对应的worker每秒一次的立即执行检测来判断作业是否执行;
2) 作业类型的选择:作业编排是一个有序无环的流程,所以第一个作业和其他作业是两个作业类型(第一个作业为JAVA/SHELL定时作业,其它作业为JAVA/SHELL依赖作业);
3) 每次定时作业成功后检测是否有下游作业(即JAVA/SHELL依赖作业),如果有,则通过1)去触发,直至所有依赖作业执行正常完成。
上述所有依赖作业都只能有一个分片,从而造成作业的水平扩容(作业并发)被牺牲掉了。
发明内容
针对上述研究的问题,本发明的目的在于提供一种分布式作业调度方法,解决现有技术中的依赖作业只能有一个分片,从而造成作业的水平扩容被牺牲的问题。
为了达到上述目的,本发明采用如下技术方案:
一种分布式作业调度方法,包括如下步骤:
S1、根据作业依赖应用场景,将每个作业进行分片,得到作业分片;
S2、在每个作业中都有一个用于描述其依赖作业的字段,若作业不是起始作业,在字段中配置依赖作业的相关信息,配置后得到所有JAVA依赖作业,所有JAVA依赖作业包括起始作业和配置了字段的JAVA依赖作业;
S3、基于作业分片和所有JAVA依赖作业,周期性触发各JAVA依赖作业执行逻辑判断,根据判断结果执行或不执行作业,直到整个流程中所有作业正常完成,其中,所述步骤S3的具体步骤为:
S3.1、判断JAVA依赖作业的作业分片是否是起始作业,即判断描述依赖作业的字段中是否配置有相关信息,若是起始作业,转到步骤S3.7,若否,转到步骤S3.2;
S3.2、周期性触发各JAVA依赖作业的各作业分片执行逻辑判断,即针对各JAVA依赖作业的各作业分片,周期性的检查作业分片是否有流程记录,若是,转到步骤S3.3,若否,转到步骤S3.4,流程记录包括起始作业产生的用于标志一个流程的流程ID和作业分片执行记录,作业分片执行记录即为作业分片执行结果;
S3.3、判断作业分片是否已成功执行,若否,返回true,并转到步骤S3.8,若是,返回false;
S3.4、检查作业分片的依赖作业是否都有执行记录,若是,转到步骤S3.5,若否,返回false,即作业分片执行失败,整个流程都停在出错的作业,从web页面查看依赖作业以及日志,排错后清除作业分片的执行记录,再次执行步骤S3.2,其中,执行记录包括起始作业产生的用于标志一个流程的流程ID和作业分片执行记录,作业分片执行记录包括执行成功或者失败的记录、执行过程和执行结果;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川新网银行股份有限公司,未经四川新网银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910902602.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:任务优先级确定方法及装置
- 下一篇:基于quartz的定时管理方法及系统