1 shedlock
解決Scheduled分布式問題,踩坑主要是基於redis集成的時候啟動項需要配置以下注解,另外每個job配置的lockAtMostFor和lockAtLeastFor配置起來比較麻煩
// 開啟定時任務鎖,默認設置鎖最大占用時間為30s,具體任務可覆蓋此配置
@EnableSchedulerLock(defaultLockAtMostFor = "PT30S")
2 elastic-job
springboot2集成2.1.5最新版本會有兼容問題,解決以后和項目代碼又有其他沖突,沒有辦法舍棄,感覺是三個集成起來最麻煩的
主要踩坑可見:https://blog.csdn.net/limiaaa2011/article/details/103955469
3 xxl-job
控制台不錯,集成也很方便,最重要的是社區活躍····推薦
目前唯一踩坑點2個
a 業務代碼啟動報端口綁定,2.2.0版本的業務bean注解后面不需要增加配置項,配置項可以參考xxl-job-executor-sample
b xxl-job-executor-sample里面的demo沒有問題,業務代碼的報錯
>>>>>>>>>>> xxl-job provider netty_http server caught exception
java.lang.NoSuchMethodError: io.netty.handler.codec.http.FullHttpRequest.uri()Ljava/lang/String;
admin端的netty版本和業務端不一致導致,把業務端其他引用netty的版本與admin端一致即可