SpringBoot的@Schedule突然失效--@RefreshScope原因导致


问题

SpringBoot中@Schedule定时调度突然失效。

排查原因是在@Schedule注解的方法的类中加了@RefreshScope注解,更改nacos配置中心的配置时,触发@RefreshScope逻辑的执行,导致定时调度任务的缓存失效。

 

解决方法

具体见:https://www.jianshu.com/p/0e490fe4ff7a

 

Schedule类实现ApplicationListener<RefreshScopeRefreshedEvent>接口,在onApplicationEvent(event)方法中,手动调用被@Scheduled标注的方法

当触发RefreshScopeRefreshedEvent事件时,就会重新把调度任务放到缓存中。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM