SpringBoot整合分布式任务调度平台XXL-JOB

XXL-JOB简要介绍

XXL-JOB是一个轻量级分布式任务调度平台,其实现原理是:调度中心会配置 cron表达式,路由策略,处理类的bean实例,执行器需要向调度中心发生心跳,对于长时间没有收到心跳的执行器,调度中心会将其剔除

其中在高可用过程中xxl-job-admin是通过xxl_job_qrtz_locks表来竞争数据库锁保证多个调度中心分发任务只分发一次

下面是XXL-JOB的架构图:

在这里插入图片描述

搭建admin

clone源码并初始化数据库

项目github地址 : https://github.com/xuxueli/xxl-job

首先git clone下来项目

源码结构:

在这里插入图片描述

之后再doc中找到sql文件,在数据库中执行,初始化数据库:

执行完毕,会在MySQL数据库中生成如下 8 张表:

在这里插入图片描述

配置调度中心

调度中心就是源码中的 xxl-job-admin 工程,我们需要将其配置成自己需要的调度中心,通过该工程我们能够以图形化的方式统一管理任务调度平台上调度任务,负责触发调度执行。

1. 修改调度中心配置文件

其他的保持一致即可,只需要修改下面几个地方:

数据库相关:
### xxl-job, datasource
spring.datasource.url=jdbc:mysql://101.23.63.118:3306/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai
spring.datasource.username=root
spring.datasource.password=AC7c
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
添加管理界面的用户名和密码:
### 管理界面的登录用户名密码
xxl.job.login.username=admin
xxl.job.login.password=123456
2. 运行调度中心

xxl-job-admin工程是一个springboot项目,直接运行项目即可

3. 访问调度中心管理界面

在浏览器输入 http://localhost:8080/xxl-job-admin 然后输入用户名和密码(前面配置文件中配置的),即可看到如下管理界面。

在这里插入图片描述

创建执行器项目

其实在源码中,作者提供了各个版本的 执行器项目,下面我以创建一个 springboot 版本的执行器为例来介绍。

一定要阅读项目中作者给的demo,要不然吃大亏!! (否则调试半天还是报错

1. 添加Maven依赖

查看demo中的版本是2.2.1-SNAPSHOT,这是一个本地的jar包

所以我们就使用maven repository官网和他最接近的版本,也就是2.2.0

        <!-- xxl-rpc-core -->
        <dependency>
            <groupId>com.xuxueli</groupId>
            <artifactId>
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mangoBUPT

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值