首页 > 其他分享 >XXL-JOB分片执行分布式任务

XXL-JOB分片执行分布式任务

时间:2024-07-08 21:53:03浏览次数:13  
标签:执行器 调度 分布式 JOB 任务 分片 执行 XXL

XXL-JOB相对于springtask来说优点之一就是分布式执行任务,可以在调度中心为执行器分发任务,实现分布式。

分片广播任务即当一个微服务形成集群的时候,任务会完整的下发给每一个执行器。而不像其他模式一样只会根据算法选择单一的任务。在任务高级配置路由策略中选择最后一项即可实现分片

使用前的准备:pom引入依赖,yaml添加配置,新增config配置,添加service组件

示例代码

/**
* 2、分片广播任务
*/
@XxlJob("shardingJobHandler")
public void shardingJobHandler() throws Exception {

// 分片参数
int shardIndex = XxlJobHelper.getShardIndex();
int shardTotal = XxlJobHelper.getShardTotal();

XxlJobHelper.log("分片参数:当前分片序号 = {}, 总分片数 = {}", shardIndex, shardTotal);

// 业务逻辑
  List<Entity> entityList = service.getTaskList(shardIndex, shardTotal);
  //todo 再根据场景让不同分片进行不同的任务处理

}

 

调度过期策略是指调度中心错过原定调度时间后,对过期任务的补偿策略

1.忽略:忽略过期任务,从当前时间开始从新计数。适用于对时间要求不严格,偶尔错过调度时间也无伤大雅的场景

2.立即执行一次:任务过期后立即执行并从新开始计数

 

阻塞处理策略:调度请求过于密集的时候,执行器无法及时处理所有任务

1.单机串行:任务固定以FIFO的队列进行,容易造成任务堆积影响性能——适用于需确保任务都执行并且对任务顺序要求不严格的情况

2.丢弃后续调度:新的任务进入时如果发现当前执行器仍在执行任务,那么新的任务直接丢弃,可能会造成数据丢失——适用于需要防止任务堆积并且对任务丢失有一定容忍的情况

3.覆盖之前调度:新的任务进入时如果发现当前执行器仍在执行任务,那么直接丢弃执行任务,也可能会造成数据丢失,而且频繁中止和启动会影响性能——适用于总是要确保最新任务优先执行并且对之前任务处理结果不敏感的情况

 

标签:执行器,调度,分布式,JOB,任务,分片,执行,XXL
From: https://www.cnblogs.com/kun1790051360/p/18289048

相关文章

  • 前端大文件上传/分片上传
    前置知识File对象:表示一组文件,我们使用<inputtype="file"/>去选择文件时,这些文件就被存储在File对象中。Blob对象:表示二进制数据,常用于存储大型数据对象(如图像、音频等)。File对象是Blob对象的一个子类,它继承了Blob对象的所有属性和方法。formData对象:前端先将文件存储......
  • List 按照指定大小分片的几种方式
    如果有一个list<string>里面可能有1000份或者更多数据,如果需要进行入库等操作,需要拆分成指定大小每份进行处理,这种需求很常见,那么应该怎么做呢?首先我们需要将List<String> 转为多份后进行逐个处理, 处理批量事务注意事务哦 那么怎么将list转为多份呢? 下面介绍2......
  • 分片集群平衡器Balancer
    分片集群平衡器 MongoDB平衡器是一个后台进程,用于监控每个分片集合中每个分片的数据量。当给定分片上的分片集合的数据量达到特定的 迁移阈值时,平衡器会尝试在分片之间自动迁移数据,并在尊重区域的情况下使每个分片的数据量达到均衡。默认情况下,平衡器进程始终处于启用状态。......
  • 【后端面试题】【中间件】【NoSQL】MongoDB提高可用性的方案(主从结构、仲裁节点、分片
    主从结构MongoDB的高可用和别的中间件的高可用方案基本类似。比如在MySQL里,接触了分库分表和主从同步;在Redis里,Redis也有主从结构;在Kafka里,分区也是有主从结构的。所以先介绍启用了主从同步我们的系统有一个关键组件-MongoDB,但是在最开始的时候,MongoDB没有启用主从,是......
  • XXL-JOB初见
    XXL-JOB是轻量级分布式任务调度平台port:8088初始账号:admin/123456主要有调度中心、执行器、任务执行流程:1.执行器向调度中心上报任务2.调度中心为执行器分配任务3.执行器执行完任务后进行汇报 如何配置使用XXL-JOB1.向数据库中载入相关SQL2.ip::8088/xxl-job-admin-......
  • job测试检查点
    定时任务测试分享:job测试方案的介绍:需求澄清明确业务需求:与业务、产品、开发了解需求背景,用户的数量,用户场景等信息。明确测试范围:与产品、开发共同评估,具体对应的场景,具体涉及的接口和表,数据量,被调用关联方链路,了解是否使用Redis和mq等。明确测试目的:评估数量为性能测试提......
  • 解决接入sleuth链路追踪后xxl-job定时任务的日志无日志问题
    问题背景随着业务规模的不断的增大,系统的复杂度也越来越高,公司软件架构也进入到了分布式微服务的阶段,在这样的情况下每一次请求都有可能跨越多个项目,传统的日志监控方式无法满足调用链路追踪,这就导致问题定位/诊断服务变得复杂。所以我们引入了sleuth这一链路追踪框架为......
  • C. Job Interview
    连接:https://codeforces.com/problemset/problem/1976/C题目:思路:我们可以想象这个是两个队列,采用两个前缀和数组:suma和sumb记录前几个完全按照大小分配成程序员/测试员的个数(指不考虑每个种类人数限制的情况),然后二分查找到最小满足的种类。这里采用ra和rb表示,然后哪个更小取哪......
  • Java大文件上传、分片上传、多文件上传、断点续传、上传文件minio、分片上传minio等解
    上传说明    文件上传花样百出,根据不同场景使用不同方案进行实现尤为必要。通常开发过程中,文件较小,直接将文件转化为字节流上传到服务器,但是文件较大时,用普通的方法上传,显然效果不是很好,当文件上传一半中断再次上传时,发现需要重新开始,这种体验不是很爽,下面介绍几种好一......
  • 66Uptime – 网站服务器 & Cronjob 监控工具 v35.0.0扩展中文版安装
    66Uptime是一款自托管、易于使用、轻量级且高性能的网站服务器和Cronjob监控工具。以其丰富的功能和便捷的管理方式,为用户提供了全方位的网站服务器和Cronjob监控解决方案:主要功能:监控网站服务器和Cronjob的运行状态,确保它们持续稳定运行。提供从多个位置检查显示器的功......