admin管理员组文章数量:1794759
SpringBoot Schedule定时任务不断重复运行 日志Log不断重复输出的问题解决
今天在做完一个自动同步DB到ES的工作后,组长发现本地跑都会不断输出我那边代码的任务日志,让我查查源头。
我跑了一下发现我那块代码日志输出不间断,并且有时候会出现连续两个相同的Log。 因为每次开始输出Log时,都会提示一句 TaskExecutor 信,我还以为是线程的问题,看了半天也没有用到线程;看组长的代码用到了线程池,但是我的也并不需要线程池。 因为我用到了Schedule定时器,打算配置每5分钟跑一次,所以cron表达式设置为: * 0/5 * * * ? 但是在跑的时候发现,每跑到第5分钟时,这一分钟内都会不断输出Log,这让我很头疼。我把代码中添加了自定义的Log Info,发现也是不断输出,这说明我的代码被不断调用。 突然我想到,是不是我的定时器出现了问题? 随即我在【在线Cron表达式生成器】这上面,设置了每5分钟,乍一看cron好像一样,但是仔细一看: 0 0/5 * * * ? 原来如此! 我的秒位原来是 * 号,即匹配了所有秒,每秒都会运行一次! 将秒位改为0,就是每小时的 5 的倍数分钟第 0 秒运行一次! 用【在线Cron表达式生成器】显示的最近时间就是:
2019/8/22 15:35:00 2019/8/22 15:40:00 2019/8/22 15:45:00 2019/8/22 15:50:00 2019/8/22 15:55:00
终于解决了这个问题!本文标签: 日志SpringBootscheduleLog
版权声明:本文标题:SpringBoot Schedule定时任务不断重复运行 日志Log不断重复输出的问题解决 内容由林淑君副主任自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.xiehuijuan.com/baike/1686477487a71900.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论