分布式任务踩坑记录
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端一致即可
不积跬步,无以至千里;不积小流,无以成江海