spring boot项目快速整合xxl-job实现定时任务

XXL-Job 分布式任务调度平台使用指南

登录信息

  • 访问地址:http://ip:端口号/xxl-job-admin
  • 用户名:admin
  • 密码:123456(默认)

平台概述 XXL-Job 是一款开源的分布式任务调度系统,提供可视化界面用于管理定时任务和任务调度。系统采用调度中心 + 执行器的架构设计:

  • 调度中心:负责任务的调度和分发,我们启动的xxl官方的服务
  • 执行器:接收并执行调度中心分配的任务,我们自己业务模块

核心功能

  1. 执行器配置 配置步骤
  2. 进入「执行器管理」界面
  3. 创建新执行器
  4. 填写执行器信息

注意:AppName 必须与业务模块名称完全一致。

  1. 项目集成 在业务模块中需要:
  2. 引入 xxl-job-core 依赖(基础包已包含)
  3. 配置执行器注册信息

示例配置:

yaml 复制代码
xxl:
  job:
    executor:
      appname: scmpt-user  # 与调度中心配置的执行器名称一致
      port: 9999
  1. 注册管理 项目启动后,执行器会自动注册至调度中心(注册信息每30秒同步一次)。

集群部署说明:相同appName的执行器会自动组成集群。

任务调度实现

Bean模式任务开发

  1. 创建调度任务 操作路径:「任务管理」→「添加任务」 必填项:
  • 执行器:选择对应模块的执行器
  • 调度类型:推荐CRON表达式
  • 运行模式:BEAN
  • JobHandler:与代码中@XxlJob注解值匹配
  1. 编写任务处理器
java 复制代码
@Component
public class DictsJob {
    @XxlJob("DictsVersionJob")
    public ReturnT<String> execute() {
        String jobParam = XxlJobHelper.getJobParam();
        System.out.println("接收参数:" + jobParam);
        
        // 业务逻辑处理
        
        return ReturnT.SUCCESS;
    }
}

关键要点:

  • @XxlJob注解值必须与调度任务JobHandler一致
  • 使用XxlJobHelper获取任务参数
  1. 任务运维 调度中心支持功能:
  • 手动触发任务(支持参数传递)
  • 查看执行记录
  • 监控任务运行状态

使用流程总结

  1. 配置执行器并完成注册
  2. 在调度平台创建任务
  3. 实现任务处理逻辑
  4. 监控任务执行情况

参考资料

相关推荐
掘金一周5 小时前
第一台 Andriod XR 设备发布,Jetpack Compose XR 有什么不同?对原生开发有何影响? | 掘金一周 10.30
前端·人工智能·后端
程序定小飞5 小时前
基于springboot的论坛网站设计与实现
java·开发语言·spring boot·后端·spring
PFinal社区_南丞5 小时前
测试驱动开发(TDD):以测试为引擎的软件工程实践
后端
初学者,亦行者5 小时前
Rust 模式匹配的穷尽性检查:从编译器证明到工程演进
后端·rust·django
IT_陈寒5 小时前
React性能翻倍!3个90%开发者不知道的Hooks优化技巧 🚀
前端·人工智能·后端
每天进步一点_JL6 小时前
聊聊@Transactional
后端
JuiceFS7 小时前
深入解析 JuiceFS 垃圾回收机制
运维·后端
何中应7 小时前
如何使用Spring Context实现消息队列
java·后端·spring
东百牧码人7 小时前
如何避免NullReferenceException
后端