笔者项目管理时,拆分了共享的配置文件,如下图:
如果你们也如此拆分了共享配置的话,则你们的nacos配置文件除了 应用-api-dev.yml外,还会有下面你拆分定义的多个配置文件,如下图:
这时,所有共享配置中的变量,我们在代码中统一配置,并为其加上
@Configuration
@RefreshScope
参数。
我们会发现除了api-dev.yml中的参数不需要重启,就能实时刷新外,其它的共享配置并达不到相同的效果。
因为自定义的共享配置还需要添加各自额外的配置,如下图:
下面的refresh-enabled:true是为整个共享配置开启允许自动刷新的开关;但若想达到真正自动刷新的目的,还需要分别将每一个自定义的共享配置改成红框中的样式。
如上图这样的配置,只有应用-bank-dev.yml能如同应用-api.yml那样达到自动刷新的目的。
其余的如应用-redis-dev.yml和应用-mongodb-dev.yml等,若服务不重启,更改配置并不能立即生效