阻塞大多是执行时间超过定时任务间隔时间造成的,会开销链接,传导调度器卡死或造成死锁。
假设定时任务1分钟级别的,如果执行时间可能接近或超过间隔时间的,
1.将任务超时时间(注意单位秒)设置为90秒,
2.将阻塞策略设置为“丢弃后续调度”
这样执行第一次超过1分钟时,调度第二次任务时会被标记失败,然后90秒触发第一次停止,执行第三次会调度成功。
如果执行耗时确实长的,则调整定时任务的间隔时间。
对三种阻塞处理策略的理解?
(1)单机串行:新的调度任务进入执行器后,该调度任务进入FIFO队列,以串行方式执行。
(2)丢弃后续调度:新的调度任务进入执行器后,若存在相同的正在运行的调度任务,本次调度请求将会被丢弃并被标记为失败。
(3)覆盖之前调度:新的调度任务进入执行器后,若存在相同的正在运行的调度任务,将会终止当前正在运行的调度任务,并清空队列,然后运行本次新的调度任务。
————————————————