目录
前言:
XXL-JOB是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。
地址:
http://gitee.com/xuxueli0323/xxl-job
https://github.com/xuxueli/xxl-job
以上是源码的地址,友友们可进行自行下载。
项目结构:
项目下过来在本地的idea进行导入,可见有4个目录结构。
doc:为该技术的文档目录和数据库的初始化脚本。
xxl-job-admin:可以理解为服务端。
xxl-job-core:为xxl-job的核心依赖。
xxl-job-executor-sample: 可以理解为客户端Client,其中有包括了:
xxl-job-executor-sample-springboot:为boot版本的示例。
下图为该技术的核心架构图,可做自行参考。
快速开始:
1、执行初始化数据库脚本。
上图为表结构,具体含义为
1)xxl_job_group:执行器信息表,用于维护任务执行器的信息
2) xxl_job_info:调度扩展信息表,主要用于保存调度任务的扩展信息,如:任务分组、任务名称、机器地址等
3)xxl_job_lock:任务调度锁
4)xxl_job_log:日志表,主要用于xxl-job任务调度的日志报表,会在调度中心报表展示
5)xxl_job_log_report:日志报表,存储xxl-job任务调度的日志报表,会在调度中心报表展示
6)xxl_job_logglue:任务GLUE日志,用于保存GLUE日志的更新变化,支持GLUE版本的回溯
7)xxl_job_registry:执行器注册表,用于维护在线的执行器与调度的地址信息
8)xxl_job_user:系统的用户表
2、修改配置文件对应配置
主要修改的内容为数据库链接信息及用户名和密码。
特别注意的一点是xxl.job.accessToken=;默认是没有配置的,如果要自己配置加密token的话,服务端要和Client端的token保持一致,否则会执行任务不成功。
3、启动xxl-job的启动类
打开启动类之后,访问默认网址:
http://127.0.0.1:8080/xxl-job-admin
默认的登录密码为:admin/123456。
4、在简单示例的boot模块进行任务的新增
上图为新增的任务,注意要使用@XxlJob注解,value为执行器的名字。同时在页面进行手动新增执行器。
AppName对应配置文件的xxl.job.executor.appname,名称可自己进行定义。
在新增执行器完成后,在任务管理中进行任务的新增。
注意:执行器的名称对应新增任务管理里的执行器选项。
同时,带*号为必填选项,且JobHandler的值为@XxlJob的Value值。
5、启动boot应用进行简单任务的测试
同时在任务管理中,选择自己创建的执行器,进行启动任务。
可通过控制台和调度日志观察是否启动成功。
控制台输出内容:
调度日志:
如果想要在其他boot应用集成xxl-job,记得添加xxl-job-core的核心依赖。
<dependency>
<groupId>com.xuxueli</groupId>
<artifactId>xxl-job-core</artifactId>
<version>2.2.0</version>
</dependency>
今天的分享就到这里了,友友们不要忘记卷一下啊。