XXL-JOB初探
- 安装
xxl-job
- 调用定时任务
安装xxl-job
采用
docker
方法的进行安装,需要依赖mysql
数据版本信息:
mysql
5.7.27xxl-job
2.2.0
安装mysql
下载镜像
1
docker pull mysql:5.7.27
创建启动
docker
容器,需要指定ip
,不然xxl-job
无法连接1
2
3# 创建lan名称的网络,不然无法指定ip
docker network create --driver nat --subnet=172.29.212.0/23 lan
docker run --name mysql -e MYSQL_ROOT_PASSWORD=password@227 --net lan -d mysql:5.7.27
安装xxl-job
下载镜像
1
docker pull xuxueli/xxl-job-admin:2.2.0
创建启动
docker
容器1
docker run --net lan -e PARAMS="--spring.datasource.url=jdbc:mysql://mysql:3306/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai --spring.datasource.username=root --spring.datasource.password=password@227" -p 8080:8080 --name xxl-job-admin -d xuxueli/xxl-job-admin:2.2.0
访问地址:http://127.0.0.1:8080/xxl-job-admin/,用户名/密码:admin/123456
调用定时任务
创建
Spring Boot
项目,直接创建在启动类中添加
XxlJobSpringExecutor
1
2
3
4
5
6
7
8
9
10
11
12@Bean
public XxlJobSpringExecutor xxlJobExecutor() {
log.info(">>>>>>>>>>> xxl-job config init.");
XxlJobSpringExecutor xxlJobSpringExecutor = new XxlJobSpringExecutor();
// xxl-job的地址
xxlJobSpringExecutor.setAdminAddresses("http://127.0.0.1:8080/xxl-job-admin");
// xxl-job的应用名称
xxlJobSpringExecutor.setAppname("xxl-job-executor-sample");
// xxl-job的端口
xxlJobSpringExecutor.setPort(9999);
return xxlJobSpringExecutor;
}在启动类中添加任务的执行方法
1
2
3
4
5
6@XxlJob("demoJobHandler")
public ReturnT<String> execute(String param){
log.info("调用成功");
XxlJobLogger.log("调用成功");
return ReturnT.SUCCESS;
}
XXL-JOB初探
http://example.com/2020/04/22/CronJob/XXL-JOB初探/