xxljob本地运行

简介: 本文介绍XXL-JOB分布式任务调度的使用教程。包含源码获取、服务端部署(数据库导入、配置修改、启动访问)、客户端运行与执行器注册,以及调度任务配置和路由策略详解。通过实际操作演示任务创建、参数设置、手动执行与日志查看,帮助开发者快速掌握XXL-JOB核心功能,实现定时任务的可视化管理和高效调度。(238字)

1.源码获取
读者朋友们可以自行去官网下载,也可以使用我已经增加了核心模块注释的压缩包:
xxl-job-master.zip
(7.8 MB)
2.服务端运行
2.1 导入数据库脚本
位置如下:
运行后会有8张表,效果如下:
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 更改数据源配置
2.3 启动服务端并访问
访问本地地址:
http://localhost:8080/xxl-job-admin
用户名/密码=admin、123456
3.客户端运行
启动后,去浏览器观看,可以看到默认已经注册进去一个服务信息
3.1 注册执行器
xxl-job不同于spring-task,是需要在控制台配置定时任务的
弹窗中编写:
稍等会刷新页面,可以看到注册地址已经有了一个,并且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),这里我们直接点击保存执行
执行完成后,会弹窗:执行成功,此时我们点击:查看日志

相关文章
|
Web App开发 前端开发 Java
SpringBoot默认200个线程对于Websocket长连接够用吗?(一)
上篇推文从源码剖析SpringBoot中Tomcat的默认最大连接数中我们知道,SpringBoot的内嵌Tomcat默认的最大连接数为200。那么,这个默认值对于项目中引入了WebSocket使用长连接后,是否足够用呢?今天强哥就带大家一起从源码的角度来分析一下。
SpringBoot默认200个线程对于Websocket长连接够用吗?(一)
|
5月前
|
数据安全/隐私保护
阿里云号码隐私保护介绍、收费价格及使用场景说明
阿里云号码隐私保护为企业及用户提供虚拟中间号服务,无需实体SIM卡即可隐藏真实号码,广泛应用于打车、外卖、物流等场景,保障通信隐私。支持通话、录音、智能状态码等功能,提供按量付费与套餐包多种计费模式,兼顾成本与灵活性。
|
8月前
|
缓存 JavaScript 前端开发
对比PAC代理与传统HTTP代理的不同
总结起来,PASSIVE 提供了基础且广泛兼容解决方案而PASSIve 则提供高级灵活控制满足特殊需求但同时也带来了额外维护负担及潜再技术挑战
689 4
|
Java 编译器
有关电脑中idea编译报错问题java: No implementation was created for AdminUserConverter due to having a problem in
有关电脑中idea编译报错问题java: No implementation was created for AdminUserConverter due to having a problem in
1407 0
IDEA 出现问题:严重占用CPU 长时间在90~100%解决方案
IDEA 出现问题:严重占用CPU 长时间在90~100%解决方案
5452 0
IDEA 出现问题:严重占用CPU 长时间在90~100%解决方案
|
IDE Java 数据库连接
SpringBoot整合XXL-JOB【02】- 启动调度中心
本文介绍了如何初始化和配置XXL-JOB调度中心。首先,从GitHub或Gitee获取源码;接着,执行`tables_xxl_job.sql`脚本初始化数据库。然后,在IDE中打开项目并修改`application.properties`中的数据库连接和`accessToken`配置。完成配置后,启动`XxlJobAdminApplication`,访问http://localhost:8080/xxl-job-admin/进行登录。最后,简要介绍了调度中心的主要功能模块,包括运行报表、任务管理、调度日志、执行器管理和用户管理。下篇将通过实例演示如何使用XXL-JOB执行定时任务。
958 6
SpringBoot整合XXL-JOB【02】- 启动调度中心
|
Java Docker 容器
SpringBoot项目集成XXL-job
SpringBoot项目集成XXL-job
1971 1
|
Java Spring
如何通过IDEA查看注解逻辑实现
如何通过IDEA查看注解逻辑实现
1779 0
|
关系型数据库 MySQL
MySQL创建表出现 Specified key was too long; max key length is 767 bytes
MySQL创建表出现 Specified key was too long; max key length is 767 bytes
593 2
|
存储 安全 Java
Java线程池ThreadPoolExcutor源码解读详解03-阻塞队列之LinkedBlockingQueue
LinkedBlockingQueue 和 ArrayBlockingQueue 是 Java 中的两种阻塞队列实现,它们的主要区别在于: 1. **数据结构**:ArrayBlockingQueue 采用固定大小的数组实现,而 LinkedBlockingQueue 则使用链表实现。 2. **容量**:ArrayBlockingQueue 在创建时必须指定容量,而 LinkedBlockingQueue 可以在创建时不指定容量,默认容量为 Integer.MAX_VALUE。 总结起来,如果需要高效并发且内存不是主要考虑因素,LinkedBlockingQueue 通常是更好的选择;
553 1

热门文章

最新文章