统一配置管理
当服务数量众多,而此时想要修改某个配置文件,这个配置文件可能跟很多个微服务相关联,那么此时需要逐个微服务进行调整,并且这些微服务都得重启
因此我们的需求是,这些配置文件能实现统一配置管理,并且更改完后能实现配置的热更新
此时,我们需要一个配置管理服务,上面记录了微服务的核心配置。微服务启动时可以读取它上面的配置,再结合本地配置,就可以完整使用。而 Nacos 不仅具有注册中心功能,还具备配置管理服务的功能
实现步骤:
1.点击控制台的添加按钮
2.填写配置信息
其中的数据项的含义如下:
① Data ID:配置文件的 id,格式为[服务名称]-[profile].[后缀名]
② Group:分组,上图为默认
③ 描述:配置的描述信息
④ 配置格式:支持 yaml
等配置格式
⑤ 配置内容:具体的配置信息
注意: 这里的配置信息不要填写 application.yml 中的一切信息,而是写有变化的配置
配置获取的流程:
项目获取配置时,是先读取 Nacos 配置文件的信息,再读取本地配置文件。但是若想读取 Nacos 配置文件信息,需要获取 Nacos 地址,而 Nacos 的地址在本地配置文件中,是靠后的,因此会导致读取失败
而 Spring 提供了一个文件叫 bootstrap.yml
,它优先级比 Nacos 配置文件高,因此会被优先读取,此时将 Nacos 地址等相关信息放进去就可以完成 Nacos 配置文件的读取
步骤如下:
1.引入Nacos的配置管理客户端依赖
<dependencies>
<!--Nacos的配置管理依赖-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
<!--bootstrap-->
<dependency>
<groupId>org.springframework.cloud</groupId>