(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202210591085.X
(22)申请日 2022.05.27
(71)申请人 天翼电子商务有限公司
地址 100037 北京市西城区阜成门外大街
31号4层429D
(72)发明人 谢清清 刘志锦
(51)Int.Cl.
G06F 9/48(2006.01)
G06F 9/50(2006.01)
(54)发明名称
一种基于elasticjob的动态自适应调节任
务分片的方法
(57)摘要
本发明公开了一种基于elasticjob的动态
自适应调节任务分片的方法, 本发 明中的自定义
分片策略包含自定义IP, 可让节点实例顺序按照
指定配置的实例IP优先排序; 同时本发 明的自定
义分片策略还包含动态适配, 可让节 点实例顺序
按照当前任务耗时而对实例顺序进行排序; 通
过"固定”加"动态"的自定义分片方式, 实现了对
实例顺序的自定义调整, 满足了将耗时严重的任
务均衡调整至其他实例机器执行, 进一步均衡了
应用实例资源, 避免了多个任务压在同一台机器
上, 避免造成某台机器资源紧张, 规避引发内存
不足的隐患, 改进了原本市面上采用的随机性调
度, 使其更贴近实际使用场景, 更 具有灵活性。
权利要求书1页 说明书4页 附图2页
CN 115145703 A
2022.10.04
CN 115145703 A
1.一种基于elasticjob的动态自适应调节任务分片的方法, 其特征在于, 包括以下步
骤:
一、 任务执 行信息表ER图关键数据库字段
1).jobName任务名称, 指每 个任务的名称, 作为本表中的唯一标识;
2).jobCur rentIp任务当前 执行IP, 指当前任务执 行的应用机器IP;
3).jobRuleType任务规则类型: 动态适配; 指定ip; 默认; 动态适配, 可让节点实例顺序
按照当前任务耗时而对实例顺序进行排序; 自定义IP, 可让节点实例顺序按照指定配置的
实例IP优先排序;
4).jobRuleValue任务规则值: 当规则类型为指定ip时, 规则值这里为对应任务执行的
ip; 当规则类型为动态适配时, 规则值 这里对应取值应用机器;
二、 任务执 行信息表初始化时序图
1).任务启动时, 根据任务名称查询任务信息表是否有记录;
2).判断任务信息表里有无记录, 当没有记录时, 新增任务信息表记录(新增当前执行
ip); 当有记录时, 更新任务信息表 记录(更新当前 执行ip);
3).任务正常的业 务执行后, 更新任务信息表 记录(更新任务 耗时);
三、 自定义分片策略时序图
1).根据任务名称查询任务信息表;
2) .当分片策略是动态适配时, 先根据任务耗时进行从大到小排序, 然后将节点
JobInstance实例顺序将耗时慢的实例放在优先执行队列, 最后节点JobInstance实例顺序
将耗时慢的实例放在后面执 行队列;
3).当分片策略是指定IP 时, 先获取任务信息表里的指定IP值, 然后节点JobInstance
实例顺序将指定IP的实例放在优先 执行队列, 最后剩余的JobI nstance节点进行设置;
4).当分片策略是默认时, 则按照elasticjob现有的规则进行分片。权 利 要 求 书 1/1 页
2
CN 115145703 A
2一种基于ela sticjob的动态自适应调节任务分片的方 法
技术领域
[0001]本发明涉及 定时任务的分片领域, 特别涉及一种基于elasticj ob的动态自适应调
节任务分片的方法。
背景技术
[0002]任务调度框架elasticJob支持并行调度,支持分布式调度协调,支持弹性扩容,是
一种分布 式调度解决方案。 elasticjob通过分片的方式来达到分布式调度。 在当前互联网
众多业务场景中有广泛的使用;
[0003]实际场景中月结应付报表定时任务只有一个分片, 月结收入报表定时任务也只有
一个分片, 有可能这两个任务按elasticjob的默认分片规则都只在一台机器上运行, 而其
他的应用机器在空跑。 理想状态是两个耗时长的任务如果能均衡分配在应用机器上, 这样
能更加合理一点。 究其原因, 当存在 多个任务, 且 各自的分片数只有1个执行时间较长时, 则
多个任务都在固定的一台机器上运行, 加重了这台机的负担, 最终可能会引发这台机器内
存不足。 而几个实例机器却一 直空跑, 机器资源分配严重不均衡, 没达 到资源均衡的目的;
[0004]基于elasticj ob现有的分片机制, 默认的分片机制是基于平均分配算法的分片策
略, 存在一个弊端: 一旦分片数小于作业服务器数, 作业将永远分配至IP地址靠前的服务
器, 导致IP地址靠后的服务器空闲。 另外两种分片模式是基于任务名称的hash值重新分配
服务器负载, 但 这个对任务名称的定义得有明确的 限制, 须受任务名称hash值的 限制, 且不
够灵活, 不能符合实际业 务场景。
发明内容
[0005]本发明要解决的技术问题 是克服现有技术的缺陷, 提供一种基于elasticj ob的动
态自适应调节任务分片的方法, 基于elasticjob的基础上, 对传入的默认节点实例顺序进
行调整, 定制化地调整节点 实例的先后顺序。 本发明中的自定义分片策略包含自定义IP, 可
让节点实例顺序按照 指定配置的实例IP优先排序。 同时本发明的自定义分片策略还包含动
态适配, 可让节点实例顺序按照当前任务耗时而对实例顺序进行排序。 通过"固定 ”加"动
态"的自定义分片方式, 实现了对实例顺序的自定义调整, 满足了将耗时严重的任务均衡调
整至其他实例机器执行, 进一步均衡了应用实例资源, 避免了多个任务压在同一台机器上,
避免造成某台机器资源紧张, 规避引发 内存不足的隐患。 通过实时对任务进行耗时统计, 进
而动态地调整job的分片策略, 同时具备指 定应用ip执行的功能, 改进了原本市面上采用的
随机性调度, 使其更贴近实际使用场景, 更 具有灵活性。
[0006]本发明提供了如下的技 术方案:
[0007]本发明提供一种基于elasticjob的动态自适应调节任务分片的方法, 包括以下步
骤:
[0008]一、 任务执 行信息表ER图关键数据库字段
[0009]1).jobName任务名称, 指每 个任务的名称, 作为本表中的唯一标识;说 明 书 1/4 页
3
CN 115145703 A
3
专利 一种基于elasticjob的动态自适应调节任务分片的方法
文档预览
中文文档
8 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共8页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 人生无常 于 2024-03-18 13:26:43上传分享