Spring默认定时器遇到的坑

版权声明:本文章仅代表作者个人观点,转载版权仅归原作者所有 https://blog.csdn.net/weixin_44567212/article/details/86590098

同事的开发任务中有用到了Spring定时器,默认设置为0点0分0秒执行,每隔一小时执行一次,在线上环境产生的数据出现了异常,有的整点时刻产生了两次重复数据,有的整点时刻没有数据。贴日志,
在这里插入图片描述
可以看到日志中几个定时任务执行的时间并不是正好在00:00:00执行,而是在这个时间点前后都有触发,误差在几百毫秒以内。由于代码中依赖定时器获取时间,导致获取到的时间并不是一个精确稳定的值导致的数据的错误。谨记:Spring定时器的触发时间并不是精确的,在开发中不要依赖于定时器去获取时间,最好是在时间的可控范围内对想要的时间进行二次的处理。

猜你喜欢

转载自blog.csdn.net/weixin_44567212/article/details/86590098
今日推荐