加入收藏 | 设为首页 | 会员中心 | 我要投稿 河北网 (https://www.hebeiwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 建站 > 正文

聊聊分布式定时任务elastic-job作业分片策略

发布时间:2019-11-14 06:49:12 所属栏目:建站 来源:聚IT
导读:【线上直播】11月21日晚8点贝壳技能总监侯圣文《数据安详之数据库安详黄金法例》 在现实开拓种常会碰着必要按时跑批,按时天天执行一次对账操纵等场景。凡是回收按时使命如spring按时框架、ScheduledExecutorService等。但这些都只适于单机,当在多节的环境
【线上直播】11月21日晚8点贝壳技能总监侯圣文《数据安详之数据库安详黄金法例》

在现实开拓种常会碰着必要按时跑批,按时天天执行一次对账操纵等场景。凡是回收按时使命如spring按时框架、ScheduledExecutorService等。但这些都只适于单机,当在多节的环境下会呈现按时使命一再执行题目,这时辰必要回收漫衍式按时使命来办理。漫衍式按时使命不只办理了以上困难,还提供了分片处理赏罚进步处理赏罚服从、漫衍式调治和谐、弹性扩容缩容、失效转移等利益。

聊聊漫衍式按时使命elastic-job功课分片计策

一、常见漫衍式按时使命有哪些?

当前有许多开源的漫衍式按时使命,以下列出几种常用的如:

  • elastic-job:当当开拓的弹性漫衍式使命调治体系,成果富厚强盛,回收zookeeper实现漫衍式和谐,实现使命高可用以及分片,而且可以支持云开拓。
  • xxl-job: 是公共点评员工徐雪里于2015年宣布的漫衍式使命调治平台,是一个轻量级漫衍式使命调治框架,其焦点计划方针是开拓敏捷、进修简朴、轻量级、易扩展。
  • Saturn:是唯品会自主研发的漫衍式的按时使命的调治平台,基于当当的elastic-job 版本1开拓,而且可以很好的陈设到docker容器上。

个中应用得较多的为elastic-job(E-job)与xxl-job (X-job),关于两者的技能选型这里不做更多详细的接头,下面提供两者的综合比拟用于参考,可团结现实营业技能场景举办选型

聊聊漫衍式按时使命elastic-job功课分片计策

二、elastic-job功课分片计策有哪些?

团结现实场景,选择吻合的功课分片计策,举办分片处理赏罚可以进步使命的执行服从。以下是elastic-job提供的分片计策

  • AverageAllocationJobShardingStrategy分片计策
  • OdevitySortByNameJobShardingStrategy分片计策
  • RotateServerByNameJobShardingStrategy分片计策
  • 自界说分片计策

聊聊漫衍式按时使命elastic-job功课分片计策

1. AverageAllocationJobShardingStrategy分片计策

com.dangdang.ddframe.job.lite.api.strategy.impl.AverageAllocationJobShardingStrategy

计策声名:

基于均匀分派算法的分片计策,也是默认的分片计策,功课数能被处事器数整除环境下匀称分派、

聊聊漫衍式按时使命elastic-job功课分片计策

假如分片不能整除,则不能整除的多余分片将依次追加到序号小(ip地点靠前)的处事器。

聊聊漫衍式按时使命elastic-job功课分片计策

弱点:均匀分片计策,当分片数小于功课处事器数时,功课会被永久分派在ip地点靠前的处事器,而导致IP地点靠后的处事器空闲。

聊聊漫衍式按时使命elastic-job功课分片计策

2. OdevitySortByNameJobShardingStrategy分片计策

com.dangdang.ddframe.job.lite.api.strategy.impl.OdevitySortByNameJobShardingStrategy

计策声名:

该计策焦点头脑为按照功课名的哈希值奇偶数抉择回收IP升/降序算法实现分片,功课名的哈希值为奇数则IP升序,功课名的哈希值为偶数则IP降序,通过这种方法用于将差异的功课分片负载平衡至差异的处事器。

如功课名哈希值为偶数,则回收IP降序算法实现分片,这样就停止了回收均匀分派算法时IP地点靠后的处事器空闲的题目。

聊聊漫衍式按时使命elastic-job功课分片计策

其内部回收了均匀算法。

聊聊漫衍式按时使命elastic-job功课分片计策

3. RotateServerByNameJobShardingStrategy分片计策

com.dangdang.ddframe.job.lite.api.strategy.impl.RotateServerByNameJobShardingStrategy

计策声名:

按照功课名的哈希值对处事器列表举办轮转的分片计策,其内部也是回收均匀分片算。,

聊聊漫衍式按时使命elastic-job功课分片计策

4. 自界说分片计策

可通过实现JobShardingStrategy接口并实现sharding要领,可按照需求定制化本身的分片计策,以下是Spring中切换自界说分派计策的设置方法。

聊聊漫衍式按时使命elastic-job功课分片计策

三、总结

elastic-job 提供的三种分片计策,其总体上都照旧行使的照旧均匀分片算法,不外是将实例举办了差异的排序操纵。支持自界说分片计策可越发自身需求定制分片计策。在现实项目应用中多为回收均匀分片计策。

(编辑:河北网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读