固定频率调度策略调整,修复小概率下触发时间偏差问题;

3.4.0-release
xuxueli 6 months ago
parent 8237582e56
commit c480303e39

@ -2790,10 +2790,11 @@ public void execute() {
### 7.44 版本 v3.4.0 Release Notes[ING]
- 1、【新增】调度性能提升:任务触发后分批批量更新,高频调度场景可百倍降低SQL操作合并执行,提升调度性能;
(新增“任务批量更新(xxl.job.schedule.batchsize)”配置项,支持动态修改批量操作大小)
- 2、【调整】Docker基础镜像调整为eclipse-temurin;
- 3、【优化】父POM依赖配置优化,移除容易配置;合并PR-3926;
- 4、【升级】升级多项maven依赖至较新版本;
- 5、【TODO】调度中心OpenAPI完善,提供任务管理能力;封装Agent Skill并推送ClawHub;
- 2、【调整】固定频率调度策略调整,修复小概率下触发时间偏差问题;
- 3、【调整】Docker基础镜像调整为eclipse-temurin;
- 4、【优化】父POM依赖配置优化,移除容易配置;合并PR-3926;
- 5、【升级】升级多项maven依赖至较新版本;
- 6、【TODO】调度中心OpenAPI完善,提供任务管理能力;封装Agent Skill并推送ClawHub;
### TODO LIST

@ -10,7 +10,14 @@ public class FixRateScheduleType extends ScheduleType {
@Override
public Date generateNextTriggerTime(XxlJobInfo jobInfo, Date fromTime) throws Exception {
// generate next trigger time, fix rate delay
return new Date(fromTime.getTime() + Long.parseLong(jobInfo.getScheduleConf()) * 1000L);
Date nextTriggerTime = new Date(jobInfo.getTriggerLastTime() + Long.parseLong(jobInfo.getScheduleConf()) * 1000L);
if (nextTriggerTime.after(fromTime)) {
// fix rate delay, after last-trigger-time
return nextTriggerTime;
} else {
// fix rate delay, after fromTime
return new Date(fromTime.getTime() + Long.parseLong(jobInfo.getScheduleConf()) * 1000L);
}
}
}

Loading…
Cancel
Save