页面树结构

版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。

(本文档仅供参考)

问题:

系统中的计划任务未按照定时时间执行,如下图,计划是设定每天7:50执行,但是上次执行时间是昨天,但是下次执行时间已经到了明天,在计划任务调度日志中也没有查看到当天是运行中的记录,如何针对此类问题进行排查。50执行,上次执行时间是昨天,但是下次执行时间已经到了明天,在计划任务调度日志中也没有查看到当天是运行中的记录,如何针对此类问题进行排查。


跟进排查方案:

1、计划没有按时执行原因大致分为一下几种情况。

情况1:服务器繁忙延期,由于预定时间点服务器线程爆满,会导致计划延期直到服务器空闲时接入;

...

runningCount / totalCount 【待执行 waitingCount个】

Image RemovedImage Added

代码块
languagesql
指标说明:
1、运行中的计划(runningCount):
select count(1) from QRTZ_FIRED_TRIGGERS;

2、服务器数量(serverCount):
select count(1) from QRTZ_SCHEDULER_STATE where LAST_CHECKIN_TIME + CHECKIN_INTERVAL > unix_timestamp();

3、每台服务器最大并发数(threadCount):
org_quartz_threadPool_threadCount=10

4、totalCount = serverCount * threadCount
当 runningCount >= totalCount ,超载(waitingCount):

5、待执行(waitingCount)
select count(1) from QRTZ_TRIGGERS where NEXT_FIRE_TIME < unix_timestamp() and TRIGGER_STATE = 'WAITING';

...