XXL-JOB学习笔记(二)

xxl支持多种路由策略。路由策略针对同一个job在不同group运行的策略,当同时启动多个同名的执行器例子时,这个执行器就有多个,如下:

这样这个xxl-job-executor-sample下就有两个进程了,配置这个group下的的job的路由策略:

具体策略详见com.xxl.job.admin.core.route.ExecutorRouteStrategyEnum

FIRST(I18nUtil.getString("jobconf_route_first"), new ExecutorRouteFirst()),
LAST(I18nUtil.getString("jobconf_route_last"), new ExecutorRouteLast()),
ROUND(I18nUtil.getString("jobconf_route_round"), new ExecutorRouteRound()),
RANDOM(I18nUtil.getString("jobconf_route_random"), new ExecutorRouteRandom()),
CONSISTENT_HASH(I18nUtil.getString("jobconf_route_consistenthash"), new ExecutorRouteConsistentHash()),
LEAST_FREQUENTLY_USED(I18nUtil.getString("jobconf_route_lfu"), new ExecutorRouteLFU()),
LEAST_RECENTLY_USED(I18nUtil.getString("jobconf_route_lru"), new ExecutorRouteLRU()),
FAILOVER(I18nUtil.getString("jobconf_route_failover"), new ExecutorRouteFailover()),
BUSYOVER(I18nUtil.getString("jobconf_route_busyover"), new ExecutorRouteBusyover()),
SHARDING_BROADCAST(I18nUtil.getString("jobconf_route_shard"), null);

包括ExecutorRouteFirst(第一个),ExecutorRouteLast(最后一个),ExecutorRouteRound(轮询),ExecutorRouteRandom(随机),

ExecutorRouteConsistentHash(一致性hsah),ExecutorRouteLFU(最不经常使用),ExecutorRouteLRU(最近最久未使用)

ExecutorRouteFailover(故障转移),ExecutorRouteBusyover(忙碌转移)和jobconf_route_shard(分片广播)

具体实现逻辑可以到这些类里阅读。

分片广播这个有些不同,每个执行者进程里都会执行该job。

xxl支持多种阻塞处理策略,

//串行:相同任务先进先出执行
SERIAL_EXECUTION("Serial execution"),
//丢弃后续调度:相同任务先进先出执行,执行已经执行的,新的任务不执行
DISCARD_LATER("Discard Later"),
//覆盖之前调度:相同任务先进先出执行,已执行的立即停止,执行新的任务
COVER_EARLY("Cover Early");
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值