跳到主要内容

定时任务

引擎包和工作台版本要求

  1. 引擎包要求引入3.20.2.1及以上的引擎包,引擎包下载地址
  2. 工作台版本要求1.10.1及以上

集成

<dependency>
<groupId>com.manatee.manatee-lowcode</groupId>
<artifactId>lowcode-quartz</artifactId>
<version>${lowcode.version}</version>
</dependency>

数据初始化及增量变更

◻️项目启动会判断是否存在lowcode_quartz_job、lowcode_quartz_job_log表是否存在,不存在则自动创建

◻️项目启动休眠一分钟,然后查询lowcode_quartz_job表有效任务,全部添加到任务调度

◻️每五分钟扫描lowcode_quartz_job表一次,根据关键字段判断是否发生变动,如果发生变动则会重新添加到任务调度(先删后加)

重试机制

◻️根据异常和返回结果判断是否执行成功

◻️在重试过程中,如果重试执行成功,把已重试次数重置为0

◻️如果重试次数用完,还是执行失败,则把任务暂停,把已重试次数重置为0

回调通知

◻️如果开启重试,需等重试成功或重试次数用完才会回调通知

◻️回调通知失败会再次重试5次,间隔时间为30s*次数

◻️回调请求参数: status-任务执行状态,0-成功,1-失败 jobId-任务ID jobLogId-任务执行结果ID

◻️回调成功需返回固定参数:callbackStatus ,值为大写的“SUCCESS”

定时任务可视化功能

可视化功能配置定时任务

任务分组管理

在设置定时任务之前,需要先增加他的任务分组,选择你的项目,然后设置分组名称,比如测试_test,点击新增就完成了

任务分组管理

点击新增之后会跳出以下界面:

配置项说明

配置项说明
任务名称为定时任务设置名称,比如定时新增用户_test
选择项目选择要添加的定时任务所在的项目,如果选择项目当中没有你要添加的项目,引擎包要求引入3.20.2.1及以上的引擎包,引擎包下载地址 ,建议对项目的项目配置进行重新保存;
选择接口选择定时任务接口,比如定时新增用户
任务分组为定时任务设置分组,比如测试分组
请求参数接口的请求参数,比如用户可以添加id,name,age,gender,classId
执行周期定时任务执行周期,多久执行一次,比如10秒执行一次:/10 * * * ?
生效日期设置定时任务生效日期
失效日期设置定时任务失效日期
计划策略是否立即执行、触发执行,默认为触发一次执行
并发执行是否并发执行
重试状态是否重试,设置重试次数、重试间隔
回调通知是否回调,比如定时新增用户之后,返回用户的数量
通知接口设置回调接口,比如回调用户数量

image-20231101163346034

点击确定之后,任务创建成功:

image-20231102144152271

可以通过点击任务状态按钮来改变运行状态,可以删除任务,通过编辑修改任务的执行策略等等,可以通过更多查看任务日志。