摘要:構建工程創建一個工程,在它的程序入口加上開啟調度任務。創建定時任務創建一個定時任務,每過在控制臺打印當前時間。通過在方法上加注解,表明該方法是一個調度任務。
這篇文章將介紹怎么通過spring去做調度任務。
構建工程創建一個Springboot工程,在它的程序入口加上@EnableScheduling,開啟調度任務。
@SpringBootApplication @EnableScheduling public class SpringbootSchedulingTasksApplication { public static void main(String[] args) { SpringApplication.run(SpringbootSchedulingTasksApplication.class, args); } }創建定時任務
創建一個定時任務,每過5s在控制臺打印當前時間。
@Component public class ScheduledTasks { private static final Logger log = LoggerFactory.getLogger(ScheduledTasks.class); private static final SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss"); @Scheduled(fixedRate = 5000) public void reportCurrentTime() { log.info("The time is now {}", dateFormat.format(new Date())); } }
通過在方法上加@Scheduled注解,表明該方法是一個調度任務。
@Scheduled(fixedRate = 5000) :上一次開始執行時間點之后5秒再執行 @Scheduled(fixedDelay = 5000) :上一次執行完畢時間點之后5秒再執行 @Scheduled(initialDelay=1000, fixedRate=5000) :第一次延遲1秒后執行,之后按fixedRate的規則每5秒執行一次 @Scheduled(cron=” /5 “) :通過cron表達式定義規則,什么是cro表達式,自行搜索引擎。測試
啟動springboot工程,控制臺沒過5s就打印出了當前的時間。
2017-04-29 17:39:37.672 INFO 677 — [pool-1-thread-1] com.forezp.task.ScheduledTasks : The time is now 17:39:37 2017-04-29 17:39:42.671 INFO 677 — [pool-1-thread-1] com.forezp.task.ScheduledTasks : The time is now 17:39:42 2017-04-29 17:39:47.672 INFO 677 — [pool-1-thread-1] com.forezp.task.ScheduledTasks : The time is now 17:39:47 2017-04-29 17:39:52.675 INFO 677 — [pool-1-thread-1] com.forezp.task.ScheduledTasks : The time is now 17:39:52總結
在springboot創建定時任務比較簡單,只需2步:
1.在程序的入口加上@EnableScheduling注解。 2.在定時方法上加@Scheduled注解。參考資料
https://spring.io/guides/gs/s...
源碼下載https://github.com/forezp/Spr...
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/71446.html
摘要:前言在使用整合定時任務,發現當某個定時任務執行出現執行時間過長的情況時會阻塞其他定時任務的執行。問題定位后續通過翻查的文檔以及打印日志輸出當前線程信息得知問題是由于默認使用只要個線程處理定時任務。問題復盤需要注意示例的版本為。 前言 在使用Springboot整合定時任務,發現當某個定時任務執行出現執行時間過長的情況時會阻塞其他定時任務的執行。 問題定位 后續通過翻查Springboo...
摘要:馬蜂窩推薦系統對于請求的平均處理時延要求在級別,時延的線保持在以內。任務隊列與異步寫入這里我們使用了中的線程池來實現。三優化方向基于和,我們在現有的推薦系統中增加了一個本地容災緩存系統,當依賴服務或者應用本身突發異常時可以返回緩存的數據。 數據庫突然斷開連接、第三方接口遲遲不返回結果、高峰期網絡發生抖動...... 當程序突發異常時,我們的應用可以告訴調用方或者用戶「對不起,服務器出了...
摘要:馬蜂窩推薦系統對于請求的平均處理時延要求在級別,時延的線保持在以內。任務隊列與異步寫入這里我們使用了中的線程池來實現。三優化方向基于和,我們在現有的推薦系統中增加了一個本地容災緩存系統,當依賴服務或者應用本身突發異常時可以返回緩存的數據。數據庫突然斷開連接、第三方接口遲遲不返回結果、高峰期網絡發生抖動...... 當程序突發異常時,我們的應用可以告訴調用方或者用戶「對不起,服務器出了點問題」...
閱讀 733·2021-11-23 09:51
閱讀 2430·2021-10-11 11:10
閱讀 1299·2021-09-23 11:21
閱讀 1091·2021-09-10 10:50
閱讀 882·2019-08-30 15:54
閱讀 3326·2019-08-30 15:53
閱讀 3287·2019-08-30 15:53
閱讀 3186·2019-08-29 17:23