xxl-job 使用中的一些常見問題

1.xxl-job 任務重複調度問題     版本 1.9.3.RELEASE

【quartz屬性控制查詢Trigger加鎖獨佔】

在quartz屬性配置文件中配置屬性值:org.quartz.jobStore.acquireTriggersWithinLock=true 保證在查詢待觸發Trigger時爲獨佔模式。

優點:改動最小,最簡單。

缺點:鎖粒度相對較粗,裏面包含了多個查詢。基於數據庫鎖控制下超時後,可能會增加導致job misfire的可能性

 

2. xxl-job偶爾執行超時的問題

 執行器的服務前置的是LB或者NGINX負載的情況下,會出現調度中心與前置負載之間的鏈接空閒超時,而又缺乏應用級別心跳保持,從而導致前置負載遠程關閉鏈接。這種情況禁止手動註冊執行器的地址。

參考鏈接:https://github.com/xuxueli/xxl-job/issues/1026(最新版1.5.0已修復,xxl-rpc添加了長連心跳保活:雙向心跳檢測週期性發送心跳進行長連保活 

壓測結論

  • 以目前已有配置來看XXL-JOB可支撐4000-5000/min 任務調度併發,且不發生調度遺漏。超過5000會有調度遺漏 
  • 獲取任務添加DB鎖可以完全解決任務重複調度問題,且未降低任務併發調度吞吐量。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章