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

参考资料

相关推荐
程序员爱钓鱼29 分钟前
第一个 Rust 程序 Hello World
后端·rust
卷福同学7 小时前
不用服务器,不用配环境,我10分钟上线了一个AI Agent
人工智能·后端·算法
小明bishe189 小时前
计算机毕业设计之基于JAVA的植物科普网站
java·spring boot·spring·架构·课程设计
GetcharZp9 小时前
只需 10 分钟,轻松实现异地组网!Netmaker 保姆级部署教程来了
后端
前端兰博10 小时前
03-Spring Boot
后端
前端兰博10 小时前
01-Java开发基础语言
后端
前端兰博10 小时前
02-Servlet、JDBC、Maven、Mybatis
后端
咖啡八杯10 小时前
GoF设计模式——模板方法模式
java·后端·spring·设计模式
码事漫谈11 小时前
Loop 正在排斥人为操作
后端
爱勇宝11 小时前
办公资料反复修改、补传、交接混乱,我做了个桌面工具来解决这件事
前端·后端·程序员