分布式任务调度平台xxl-job集成springboot使用步骤

为了能便于统一管理定时任务,并灵活设置任务的执行时间、启动/停止,于是引入了xxl-job框架

使用xxl-job-2.2.0.release版本,点这里看xxl-job官网文档
主要是在调度中心页面(地址:http://192.168.1.61:9080/xxl-job-admin/)集中配置执行器(执行任务的微服务)及任务
分布式任务调度平台xxl-job集成springboot使用步骤_第1张图片

下面用cmis-enroll举例

执行器配置

1.导入maven依赖(已放到项目根pom文件中)
<!-- 引入任务调度中心 -->
 <dependency>
     <groupId>com.xuxueli</groupId>
     <artifactId>xxl-job-core</artifactId>
     <version>2.2.0</version>
 </dependency>
2.在cmis-enroll项目的application-dev.yml中添加如下配置:

分布式任务调度平台xxl-job集成springboot使用步骤_第2张图片

# 任务调度中心
xxl:
  job:
    admin:
      # 调度中心平台地址
      addresses: http://192.168.1.61:9080/xxl-job-admin
    ### xxl-job, access token
    accessToken:
    ### xxl-job executor appname
    executor:
      appname: cmis-enroll
      ### xxl-job executor registry-address: default use address to registry , otherwise use ip:port if address is null
      address:
      ### xxl-job executor server-info
      ip: 192.168.10.28
      port: 9100
      ### xxl-job executor log-path
      logpath: /Users/changzhichen/logs
      ### xxl-job executor log-retention-days
      logretentiondays: 30
3.新增类 XxlJobConfig.java

用来读取上述配置,初始化XxlJobSpringExecutor
(/cmis-enroll/src/main/java/com.bolt.enroll.config.XxlJobConfig)

4.新建类并按下图进行配置,@XxlJob的值在调度中心新增任务时使用

分布式任务调度平台xxl-job集成springboot使用步骤_第3张图片

import com.xxl.job.core.biz.model.ReturnT;
import com.xxl.job.core.handler.annotation.XxlJob;
import com.xxl.job.core.log.XxlJobLogger;
import org.springframework.stereotype.Component;

@Component
public class TestHandler {
     
	@XxlJob("testHandler")
	public ReturnT<String> testHandler(String param) throws Exception {
     
		XxlJobLogger.log("XXL-JOB, Hello World.");
		// todo 业务操作
		return ReturnT.SUCCESS;
	}
	@XxlJob("testHandler2")
	public ReturnT<String> testHandler2(String param) throws Exception {
     
		XxlJobLogger.log("XXL-JOB, Hello World.");
		// todo 业务操作
		return ReturnT.SUCCESS;
	}
}
5.对已有的任务进行升级改造

在这里插入图片描述

1.去掉@Scheduled注解,改为@XxlJob注解,
2.再修改方法返回值为ReturnT<>,
3.添加方法参数String param(即使没用,也不可省略,否则报错)
4.改造完成。

注意:要使用下面的代码,来返回给调度平台结果
XxlJobLogger.log(“XXL-JOB, Hello World.”);

执行器、任务配置

1.登录调度平台

分布式任务调度平台xxl-job集成springboot使用步骤_第4张图片

2.执行器管理–》新增执行器并保存

分布式任务调度平台xxl-job集成springboot使用步骤_第5张图片
说明:
a).AppName就是在项目中配置的appname
b).名称、排序自定义即可
c).注册方式
自动注册(推荐使用):执行器运行成功后,会调度中心会自动获取ip及port(经查源码,发现延迟30秒后可在执行器管理列表的“OnLine 机器地址”中看到)
手动注册(可支持多个地址,中间以,隔开)http://192.168.1.1:9991,http://192.168.1.2:9992

3.任务管理–》新增任务

分布式任务调度平台xxl-job集成springboot使用步骤_第6张图片
下拉框选择新增的执行器,点右侧的新增任务
分布式任务调度平台xxl-job集成springboot使用步骤_第7张图片
填入红色*的项,其中主要改:
Cron:定时任务执行的时间配置
jobHandler:方法中@XxlJob的值
其它默认即可

4.配置完成

完成上述步骤,即可点击操作下的执行、启动等按钮,通过“查看日志”来验证定时任务是否成功执行了
分布式任务调度平台xxl-job集成springboot使用步骤_第8张图片
分布式任务调度平台xxl-job集成springboot使用步骤_第9张图片

任务启动后,可以直接点击编辑,修改corn,保存成功后,该配置自动生效。

你可能感兴趣的:(任务调度,spring,quartz,分布式任务,分布式,任务调度)