换掉你的@RefreshScope吧
在Spring Cloud中,@RefreshScope是用来动态刷新配置的,在和配置中心集成后,要想不重启动态刷新配置,需要在类上面加上@RefreshScope,但是这个注解因为其机制是销毁现有被标记对象重新创建新的被标记对象,存在一些问题,比如会将动态数据源的连接给干掉,导致mq的listener失效。为了解决这个问题,写了下面的小案例,可以用来替代这个注解。
项目地址:https://gitee.com/xuwenjingrencai/microservice
1、注解
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface MyRefresh {
}
2、配置变更监听器以及动态刷新逻辑
@Component
@Slf4j
public class MyRefres
共有 0 条评论