第一代定時任務系統(tǒng)上線用了大概半年之后,就被我們厭倦了。于是就規(guī)劃了第二代定時任務系統(tǒng)。

第二代定時任務系統(tǒng)

第二代調度系統(tǒng)主要解決的是,避免每次修改定時任務的執(zhí)行時間都需要重新啟動整個項目。另外也可支持單獨重新調度單個定時任務。

我們做了一個請求入口,當更新了庫表里面的數據之后,重新請求一下特定的url就會自動重新加載定時任務。

使用scheduler刪除定時任務

public void reScheduler() throws Exception {    // 取消現(xiàn)有的任務
    String[] jobNames = quartzUtil.getJobNames();    if (null != jobNames && jobNames.length > 0) {        for (String jobName : jobNames) {
            logger.info("----開始移除任務:" + jobName);
            quartzUtil.cancelJob(jobName);
            logger.info("----成功移除任務:" + jobName);
        }
    }
    logger.info("現(xiàn)有任務已全部取消");    this.initScheduler();
}
        		

網友評論