定时任务框架入门
定時任務有很多種,比如大家鬧鐘。學習了程序開發后,對于數據庫有定時器(定時執行某條sql語句)。對于操作系統來說也有定時器,比如可以設置定時關機,假如你使用的是linux,那這時可能會做數據庫的定時備份。對于js來說,也有定時器(http://caibaojian.com/javascript-timer.html)。對于java來說,當然也有他的定時器Timer(jdk自帶),但我們一般會使用比較成熟的框架(Quartz,SpringTask),對于項目來說,這兩個框架都用到了,而腳手架工程已經內置好了Quartz定時器,你可以通過簡單的界面操作,設置某個類中的方法被定時執行(定時收發郵件)。對于一些業務上的操作,我在這里采用的是SpringTask的方案。
對于定時任務(不涉及到具體的實現方案)來說,他里面最重要的就是定時的規則該怎么指定?
定時規則是什么?定時任務要在何時被執行,或者多長時間重復執行一次
指定定時規則的表述可以使用表達式來設置,跟正則表達式類似(用于匹配字符串),而我們的時間表達式用于匹配時間,如果表達式跟時間能匹配,那這時定時任務就會被執行。
這種在時間圈中用的表達式叫Cron表達式,Cron(克龍)是一個時間單位,代表百萬年,這就代表了Cron能對時間進行非常精準,大范圍的控制。而Cron表達式對于編程來說,他是通用的,他可以應用于不同的系統,應用于不同的語言。在各種情況下略微有所不同,但是大體上是不會改變的。
總結
- 上一篇: RocketMQ入门
- 下一篇: 数据采集提升性能篇-使用Mybatis的