nacos实现配置管理
1,在nacos中添加配置文件:
注意配置文件的名字的格式:服务名称-环境名称.后缀名
例:userservice-dev.yaml
注意:项目的核心配置,需要热更新的配置才有放到nacos管理的必要。基本不会变更的一些配置还是保存在微服务本地比较好。
2,微服务拉取nacos中的配置
微服务要拉取nacos中管理的配置,并且与本地的application.yml配置合并,才能完成项目启动。
spring引入了一种新的配置文件:bootstrap.yaml文件,会在application.yml之前被读取,因此把nacos的地址等信息配置在bootstrap.yml文件中。
a,首先,在需要nacos进行配置管理的服务中引入依赖:
<!--nacos配置管理依赖-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
b,在resources中新建一个bootstrap.yaml配置文件,在里面配置nacos的信息;
这里application.yml中配置的nacos的一些重复的信息就可以删除了。
3,配置热更新
我们最终的目的,是修改nacos中的配置后,微服务中无需重启即可让配置生效,也就是配置热更新
方法一:
在@Value注入的变量所在类上添加注解@RefreshScope:
方式二:
创建配置属性类
使用@ConfigurationProperties注解代替@Value注解。
这样在nacos中配置管理中修改配置信息的话不用重启服务就可以更新配置了。