作为当下最热门的分布式调度框架,xxl-job收到众多开发者的追捧。本文将从实践着手,从0到1搭建一个xxl-job调度平台。
1. 搭建xxl-job
1.1 下载xxl-job源码
码云地址:gitee.com/xuxueli0323…
官网地址:
1.2 执行sql脚本
在doc/db/tables_xxl_job.sql目录下,有xxl-job必备的数据库
1 | sql复制代码# |
1.3 修改配置文件
修改配置文件,主要是将数据库连接信息配置成自己的数据库信息,邮箱也配置成自己的邮箱账户信息
xxl-job/xxl-job-admin/src/main/resources/application.properties
修改日志配置文件logback.xml
,将路径修改成相对路径
1 | xml复制代码<property name="log.path" value="./data/applogs/xxl-job/xxl-job-admin.log"/> |
并在resources目录下,新增/data/applogs/xxl-job/xxl-job-admin.log
文件
1.4 启动项目
com.xxl.job.admin.XxlJobAdminApplication
启动项目,启动成功如下,默认是8080端口。
1 | log复制代码Connected to the target VM, address: '127.0.0.1:53860', transport: 'socket' |
在浏览器中打开 http://localhost:8080/xxl-job-admin/toLogin ,打开如下界面说明部署成功
账号名:admin 密码:123456
2. 配置xxl-job执行器
在xxl-job中,每一个项目相当于一个执行器,一个执行器里面可以配置多个定时任务。
2.1 添加依赖
- 首先在需要引入定时任务的项目中添加依赖
1 | xml复制代码<dependency> |
2.2 修改配置
- 在yml配置文件中,新增xxl-job相关配置
1 | yml复制代码xxl: |
2.3 添加config配置文件
直接添加无需修改
1 | java复制代码/** |
2.4 新增执行器
执行器管理-新增执行器
- AppName 填写应用名
- 名称 填写描述信息
- 注册方式 自动注册
- 机器地址 无需填写,会自定扫描
3. 配置任务
3.1 新增任务
- 接下来就新增一个定时任务,我们需要在刚才配置的执行器项目中新增job
1 | java复制代码@Component |
3.2 配置任务
进入到管理界面,任务管理-新增任务,填写必填信息即可
- 执行器:选择刚刚新增的执行器
- 调度类型:Cron表达式
- JobHandler:xxljob注解中定义的
- 运行模式:bean模式
3.3 启动项目
项目启动后,会注册到任务调度中心,日志如下
1 | log复制代码2021-08-17 12:01:56.293 INFO 88467 --- [ main] c.s.cms.base.web.config.XxlJobConfig : >>>>>>>>>>> xxl-job config init. |
3.4 启动任务
启动成功后,定时任务就会被调用成功
4. 总结
至此我们已经成功搭建了xxl-job和定时任务。关于xxl-job的一些工作机制和原理还没有涉及,计划将在后续文章进行深入探讨。
本文转载自: 掘金