定時任務框架quartz

一.爲什麼要用定時任務

1.系統間同步數據出現問題,需要找出差異修復

2.DBeaver編寫SQL查詢Hive數據庫,導出差異

3.使用JDBC多線程連接Hive,生成Excel文件

4.定時運行

spring task:不支持集羣部署

 

二、quartz

1.做什麼事情:Job JobDetail

2.任務以什麼樣的規律運行:Trigger

爲什麼要對JobDetail和Trigger做解耦?可以實現靈活的調度

3.誰來指揮:Scheduler調度器是單例的,可以避免任務重複執行

 

實現任務動態管理:

1.爲什麼需要動態管理

2.如何實現動態管理

3.怎麼從界面上管理任務?

4.非配置文件方式,任務怎麼隨spring啓動運行。 

 

quartz的不足:

1.不支持任務分片策略

2.沒有可視化管理(操作,監控,日誌,報表)

3.沒有重試/恢復機制