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. 监控任务执行情况

参考资料

相关推荐
陈随易17 小时前
在 VSCode 里,把项目一键部署到服务器
前端·后端·程序员
鱼樱前端17 小时前
我用 Claude Code 后,编码效率翻 3 倍。但更值钱的是别的。
前端·后端·ai编程
犀利豆18 小时前
Claude code tools 研究系列-开篇(AskUserQuestion)
后端
颜酱21 小时前
06 | 把 meta_config 同步进 MySQL(生成阶段)
前端·人工智能·后端
IT_陈寒1 天前
SpringBoot自动配置坑了我一周,原来问题这么蠢!
前端·人工智能·后端
iOS开发上架哦1 天前
Android代码混淆与iOS加固技术详解
后端·ios
Alan_6911 天前
商品详情优化三板斧-拆分-多级缓存-GC调参
后端·缓存
Conan在掘金1 天前
ArkTS 进阶之道(3):为哈禁解构声明?类型一眼可见 vs 推断链断裂
后端
晚安code1 天前
干掉成山的 if-else:工厂造、策略选,一文讲透两个模式的配合
后端·设计模式
feng尘1 天前
深度解析布隆过滤器(Bloom Filter):原理、优缺点与 1000 万黑名单实战
后端·面试