外观
定时计划
系统提供了两种运行方案:
- 单机运行,此种方式利用 Spring 框架实现,无任何第三方依赖。
- xxl-job,需要额外部署 xxl-job 管理平台,适合集群部署。
注解
@AbScheduled
任务调度方法标记
属性
- jobKey:任务标识,全局唯一
开始使用
单机运行
引入依赖
程序启动入口模块
<dependency>
<groupId>com.dstz</groupId>
<artifactId>ab-component-crontab</artifactId>
<version>${project.version}</version>
</dependency>
启用调度
application.yml
ab:
schedule:
enable: true
页面配置
菜单路径: 系统 > 定时计划
执行器类型-注解
INFO
任务标识关联的注解@AbScheduled
属性jobKey
执行器类型-Bean
INFO
- bean id:spring 容器 BeanId
- method name: 被调度对象方法
执行器-Groovy
INFO
执行器编写的脚本为 Groovy
xxl-job
程序启动入口模块引入依赖
<dependency>
<groupId>com.dstz</groupId>
<artifactId>ab-component-xxljob</artifactId>
<version>${project.version}</version>
</dependency>
配置属性
配置文件:application.yml
- xxljob.admin-addresses
调度中心部署跟地址 [选填]:如调度中心集群部署存在多个地址则用逗号分隔。执行器将会使用该地址进行"执行器心跳注册"和"任务结果回调";为空则关闭自动注册;
- xxljob.admin-addresses.access-token
执行器通讯 TOKEN [选填]:非空时启用;
- xxljob.app-name
执行器 AppName [选填]:执行器心跳注册分组依据;为空则关闭自动注册
- xxljob.executor-address
执行器注册 [选填]:优先使用该配置作为注册地址,为空时使用内嵌服务 ”IP:PORT“ 作为注册地址。从而更灵活的支持容器类型执行器动态 IP 和动态映射端口问题。
- xxljob.executor-ip
执行器 IP [选填]:默认为空表示自动获取 IP,多网卡时可手动设置指定 IP,该 IP 不会绑定 Host 仅作为通讯实用;地址信息用于 "执行器注册" 和 "调度中心请求并触发任务";
- xxljob.executor-port
执行器端口号 [选填]:小于等于 0 则自动获取;默认端口为 9999,单机部署多个执行器时,注意要配置不同执行器端口;
- xxljob.executor-log-path
执行器运行日志文件存储磁盘路径 [选填] :需要对该路径拥有读写权限;为空则使用默认路径;
- xxljob.executor-log-retention-days
执行器日志文件保存天数 [选填] : 过期日志自动清理, 限制值大于等于 3 时生效; 否则, 如-1, 关闭自动清理功能;
页面配置
添加执行器
添加任务
WARNING
使用注解@AbScheduled
标记的方法,jobKey 对应图中 JobHandler