-
Notifications
You must be signed in to change notification settings - Fork 3.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
elastic-job-lite-spring 2.1.5 个别任务不调度 #403
Comments
项目是跑在阿里云上的,也没有报错的日志,之前用1.x的时候也出现过,然后换成了2.x 最近又出现了 |
我最近也是第一次遇到了这种情况,使用的版本是elastic-job-lite: 2.0.3。 |
@fanfantastic 对头,我们也是重启好了的,不过不是第一次重启好了,是第二次重启才好的 |
开启reconcileIntervalMinutes这个配置进行自我修复。 |
@terrymanu 之所以用 这种词语,是因为不调度的任务是随机的,完全无法确定到底是那个会不被调度。。。 我也很无奈啊。。。 |
@terrymanu 如果spring的xml 里不配置reconcile-interval-minutes 是说明该配置项是关闭的么? |
我也遇到了,生产环境紧急恢复没有时间进行排查。我是重启应用以后发现还是不执行,然后只能登陆zookeeper删除节点,重启应用,就又恢复了。跑着跑着时不时来这么一下子,受不鸟 |
最近在生产环境中,我们遭遇了一个问题,经过调查发现是由于ZooKeeper(ZK)发生故障引起的。在这次故障中,所有节点尝试连接ZK时均超时,这直接导致了计划中的任务未能按时触发。幸运的是,ZK在2分钟后自动恢复了正常,但遗憾的是,期间错过的任务并未得到补偿执行。
至于为什么没有被ReconcileService reshard,怀疑是因为 hasShardingInfoInOfflineServers = true 所以没有被修复; 短期解决办法是感知到应触发而未触发的,补偿调度; |
继续拜读了一遍源码,发现下面的三个参数组合,可以解决,针对每天跑一次的任务遇到zk网络故障: private int baseSleepTimeMilliseconds = 1 * 60 * 1000; //等待重试的间隔时间的初始值.
private int maxSleepTimeMilliseconds = 10 * 60 * 1000; //等待重试的间隔时间的最大值.
private int maxRetries = 10; 对上面配置的解释:假设网络故障不超过10分钟,上面的配置可以轻松应对; 但是上面的配置是服务级别,而非job级别,so 期待按job级别的 ExponentialBackoffRetry。 |
Please answer these questions before submitting your issue. Thanks!
Which version of Elastic-Job do you using?
1、elastic-job-lite-spring 2.1.5
2、使用springboot 工程
Expected behavior
定时调度配置的任务
Actual behavior
某些任务没有触发调度
Steps to reproduce the behavior
正常运行,发现其中一个任务没预期输出,最后查看日志发现该任务并没有触发。
Please provide the reproduce example codes (such as github link) if possible.
配置片段
java代码
通过运维平台上看 项目是正常运行状态
The text was updated successfully, but these errors were encountered: