開發好物推薦6之分佈式任務調度平臺xxl-job

前言

分佈式開發環境中,任務調度的需求基本是必不可少的。傳統的最佳方案是Quartz。

但是Quartz有以下缺點

  1. 對業務系統侵入性非常嚴重,需要將十幾張表放入業務數據庫中。

  2. 沒有提供界面操作,不是很人性化。

  3. 調度邏輯和QuartzJobBean耦合在同一個項目中。

在這種背景下,需要有一個更好的平臺來克服以上缺點,xxl-job應運而生。

推薦理由

  • 開發迅速、學習簡單、輕量級、易擴展。
  • 現已開放源代碼並接入多家公司線上產品線,開箱即用。
  • 通過Web頁面對任務進行CRUD操作,操作簡單,一分鐘上手。

  • 支持動態修改任務狀態、啟動/停止任務,以及終止運行中任務,即時生效。

  • 支持彈性擴容縮容,故障轉移,任務超時控制,任務失敗重試。

  • 任務失敗時支持郵件報警,支持配置多郵件地址群發報警郵件,方便及時感知錯誤。

  • 樣例和文檔詳細,持續更新迭代

實踐

  1. git下載源碼: https://gitee.com/xuxueli0323/xxl-job.git
  2. 導入到Eclipse或者其他開發工具
  3. 修改配置文件

開發好物推薦6之分佈式任務調度平臺xxl-job


4.初始化SQL腳本

開發好物推薦6之分佈式任務調度平臺xxl-job

  1. 啟動項目,默認端口8080,項目路徑xxl-job-admin


開發好物推薦6之分佈式任務調度平臺xxl-job


  1. 登錄,默認用戶名:密碼 admin:123456


開發好物推薦6之分佈式任務調度平臺xxl-job


6.在springBoot項目中使用

6.1 POM中引入依賴

<code>         
        
            com.xuxueli
            xxl-job-core
            2.2.1-SNAPSHOT
        /<code>

6.2 執行器配置


開發好物推薦6之分佈式任務調度平臺xxl-job


開發好物推薦6之分佈式任務調度平臺xxl-job

6.3 執行器的啟動類配置


開發好物推薦6之分佈式任務調度平臺xxl-job


6.4創建Job任務類(Bean的方法模式)


開發好物推薦6之分佈式任務調度平臺xxl-job

注意

<code>1、在Spring Bean實例中,開發Job方法,方式格式要求為 "public ReturnT execute(String param)"
2、為Job方法添加註解 "@XxlJob(value="自定義jobhandler名稱", init = "JobHandler初始化方法", destroy = "JobHandler銷燬方法")",註解value值對應的是調度中心新建任務的JobHandler屬性的值。
3、執行日誌:需要通過 "XxlJobLogger.log" 打印執行日誌;/<code>

6.5調度中心,新建調度任務


開發好物推薦6之分佈式任務調度平臺xxl-job

6.6 啟動項目


開發好物推薦6之分佈式任務調度平臺xxl-job


開發好物推薦6之分佈式任務調度平臺xxl-job

6.7 通過任務調度中心,啟動任務


開發好物推薦6之分佈式任務調度平臺xxl-job

6.8 觀察調度日誌,查看任務是否成功


開發好物推薦6之分佈式任務調度平臺xxl-job


分享到:


相關文章: