XXLJob

简介: 本文介绍XXL-JOB本地运行全流程:下载源码后,导入数据库并启动服务端,配置数据源,访问管理后台;客户端启动后自动注册执行器,通过控制台配置调度任务与路由策略,支持多种执行模式如轮询、随机、分片广播等,并可实时查看执行日志,完成任务测试与调试。

xxljob本地运行
1.源码获取
读者朋友们可以自行去官网下载,也可以使用我已经增加了核心模块注释的压缩包:
xxl-job-master.zip
(7.8 MB)
2.服务端运行
2.1 导入数据库脚本
位置如下:
image.png

运行后会有8张表,效果如下:
image.png

xxl_job_lock:任务调度锁表;
xxl_job_group:执行器信息表,维护任务执行器信息;
xxl_job_info:调度扩展信息表: 用于保存XXL-JOB调度任务的扩展信息,如任务分组、任务名、机器地址、执行器、执行入参和报警邮件等等;
xxl_job_log:调度日志表: 用于保存XXL-JOB任务调度的历史信息,如调度结果、执行结果、调度入参、调度机器和执行器等等;
xxl_job_log_report:调度日志报表:用户存储XXL-JOB任务调度日志的报表,调度中心报表功能页面会用到;
xxl_job_logglue:任务GLUE日志:用于保存GLUE更新历史,用于支持GLUE的版本回溯功能;
xxl_job_registry:执行器注册表,维护在线的执行器和调度中心机器地址信息;
xxl_job_user:系统用户表;
2.2 更改数据源配置
image.png

2.3 启动服务端并访问
image.png

访问本地地址:
http://localhost:8080/xxl-job-admin
用户名/密码=admin、123456
image.png

3.客户端运行
启动后,去浏览器观看,可以看到默认已经注册进去一个服务信息
image.png
image.png

3.1 注册执行器
xxl-job不同于spring-task,是需要在控制台配置定时任务的
image.png

弹窗中编写:
稍等会刷新页面,可以看到注册地址已经有了一个,并且ip就是自己的服务ip
3.2 配置调度信息
路由策略说明:
FIRST(第一个):固定选择第一个执行器;
LAST(最后一个):固定选择最后一个执行器;
ROUND(轮询):在线的执行器按照轮询策略选择一个执行
RANDOM(随机):随机选择在线的执行器;
CONSISTENT_HASH(一致性HASH):每个任务按照Hash算法固定选择某一台执行器,且所有任务均匀散列在不同执行器上。
LEAST_FREQUENTLY_USED(最不经常使用):使用频率最低的执行器优先被选举;
LEAST_RECENTLY_USED(最近最久未使用):最久未使用的执行器优先被选举;
FAILOVER(故障转移):按照顺序依次进行心跳检测,第一个心跳检测成功的执行器选定为目标执行器并发起调度;
BUSYOVER(忙碌转移):按照顺序依次进行空闲检测,第一个空闲检测成功的执行器选定为目标执行器并发起调度;
SHARDING_BROADCAST(分片广播):广播触发对应集群中所有执行器执行一次任务,同时系统自动传递分片参数;可根据分片参数开发分片任务
4.测试执行效果
一般任务编写完成,规则配置完成之后,我们会测试一下任务是否正常,此时就如下操作即可:

在弹窗中,可以增加执行参数,也可以指定固定某台ip(debug调试就可以写自己本地ip),这里我们直接点击保存执行
执行完成后,会弹窗:执行成功,此时我们点击:查看日志

相关文章
|
6月前
|
存储 Linux 虚拟化
Proxmox VE 9.1 发布 - 开源虚拟化管理平台
Proxmox VE 9.1 发布 - 开源虚拟化管理平台
1769 1
Proxmox VE 9.1 发布 - 开源虚拟化管理平台
|
存储 JSON NoSQL
ETCD教程-4.深入ETCD
目前etcd主要经历了3个大的版本,分别为etcd 0.4版本、etcd 2.0版本和etcd 3.0版本。
1310 0
ETCD教程-4.深入ETCD
|
3月前
|
人工智能 数据可视化 Java
AI智能体的开发方法
本文系统梳理国内AI智能体开发全景:从“感知-决策-行动-记忆”认知闭环架构出发,对比Dify、Coze等低代码平台与LangGraph、AgentScope、Eino、Spring AI Alibaba等编程级框架;解析MCP协议、RAG技术栈等基础设施;并按MVP、企业级、极客定制三类场景给出选型建议。(239字)
|
6月前
|
算法 安全 前端开发
低代码不是更好吗?为什么程序员会讨厌它?
低代码能快速搭建应用,解放生产力,但也暗藏技术债、供应商锁定和职业焦虑等风险。它应是辅助工具,而非万能解药,合理使用才能发挥价值。
|
5月前
|
Java 测试技术 调度
小结
本文介绍XXL-JOB任务调度框架的使用,包括其核心组成、任务编写与配置方法。通过@XxlJob注解定义任务,结合Cron表达式实现定时调度,并支持BEAN和GLUE两种模式。重点讲解分片广播任务,利用分片参数实现分布式环境下任务的高效并行处理,提升系统性能与扩展性。
|
7月前
|
人工智能 安全 数据可视化
Dify让你拖拽式搭建企业级AI应用
Dify是开源大模型应用开发平台,融合BaaS与LLMOps理念,通过可视化工作流、低代码编排和企业级监控,支持多模型接入与RAG知识库,助力企业快速构建安全可控的AI应用,实现从原型到生产的高效落地。
Dify让你拖拽式搭建企业级AI应用
|
Java 中间件 调度
SpringBoot整合XXL-JOB【03】- 执行器的使用
本文介绍了如何将调度中心与项目结合,通过配置“执行器”实现定时任务控制。首先新建SpringBoot项目并引入依赖,接着配置xxl-job相关参数,如调度中心地址、执行器名称等。然后通过Java代码将执行器注册为Spring Bean,并声明测试方法使用`@XxlJob`注解。最后,在调度中心配置并启动定时任务,验证任务是否按预期执行。通过这些步骤,读者可以掌握Xxl-Job的基本使用,专注于业务逻辑的编写而无需关心定时器本身的实现。
4779 10
SpringBoot整合XXL-JOB【03】-  执行器的使用
|
Arthas 运维 监控
Arthas monitor(方法执行监控)
Arthas monitor(方法执行监控)
930 0
|
SQL cobar 算法
SpringBoot 2 种方式快速实现分库分表,轻松拿捏!
SpringBoot 2 种方式快速实现分库分表,轻松拿捏!
7188 6
SpringBoot 2 种方式快速实现分库分表,轻松拿捏!

热门文章

最新文章