点击查看【youku】
在微服务架构一下,传统的 spring task 、 Quartz 已经不再推荐使用,pig 提供了分布式任务调度平台 XXL-JOB 整合能力。提供执行器名称等自动注入能力
1. 引入maven 依赖
<dependency>
<groupId>com.pig4cloud</groupId>
<artifactId>pig-common-job</artifactId>
</dependency>
2. 开启配置
//main 方法启动服务应用
@EnablePigXxlJob
3. 访问控制台
- 浏览器访问
http://pig-job:5004/xxl-job-admin
- 新增执行器
AppName 若服务没有配置,则默认为 服务名称 spring.applicaiton.name
- 确定执行器配置成功 ,配置后需要等待10秒左右
开发第一个任务“Hello World”
- 在业务微服务中 增加 DemoJobHandler (定时任务的执行业务内容)
@Slf4j
@Component
public class DemoJobHandler {
@XxlJob("demoJobHandler")
public void demoJobHandler() {
String param = XxlJobHelper.getJobParam(); // 获取参数
int shardIndex = XxlJobHelper.getShardIndex();// 获取分片参数
XxlJobHelper.handleSuccess(); // v2.3.0 设置任务结果
}
}
本示例以新建一个 “GLUE模式(Java)” 运行模式的任务为例。更多有关任务的详细配置,请查看详细使用文档参考 xxl-job 官网
前提:请确认“调度中心”和“执行器”项目已经成功部署并启动;
步骤一:新建任务:
登录调度中心,点击下图所示“新建任务”按钮,新建示例任务。然后,参考下面截图中任务的参数配置,点击保存。
详细使用文档参考 xxl-job 官网