更新时间:2026-07-28 GMT+08:00
定时任务抖动机制
循环任务抖动
循环任务每次触发时,会在计划时间基础上向后延迟一小段随机时间。
- 偏移量计算:基于任务ID确定性计算(同一任务每次偏移量一致,不随时间变化)。
- 偏移范围:min(10% × 执行周期, 5分钟),即最多5分钟。
- 偏移方向:仅向后延迟,不会提前执行。
单次任务抖动
整点和半点是多个任务最容易集中触发的时刻,抖动机制专门针对这些时刻分散负载。单次任务仅在触发时间恰好在整点(:00)或半点(:30)时添加抖动,其他时间不加。
- 偏移方向:向前提前执行(负抖动)。
- 偏移范围:0~30秒,即最多提前30秒触发。
- 触发条件:仅在分钟数为0或30时生效。
抖动的确定性特征
抖动偏移量基于任务ID通过哈希算法确定性计算,具有以下特征:
- 同一任务始终一致:同一个任务的每次触发偏移量相同,不会忽快忽慢。
- 不同任务偏移不同:不同任务即使设定相同周期,偏移量也不同,避免同时触发。
- 不可手动配置:抖动参数由系统预设,无需也不支持用户手动调整。