Nacos配置管理
统一配置管理
在nacos中添加配置文件
- Nacos配置流程:
- 在Nacos中添加配置信息。
- 在弹出表单中填写配置信息。
在微服务中引入nacos的conig依赖,添加bootstrap.yml,篇日志nacos,配置nacos的地址,当前环境、服务名称、文件后缀名。这些决定了项目启动时去nacos读取哪个文件。
- 配置获取步骤:
-
引入Nacos的管理客户端依赖
-
在resource目录中添加一个bootstrap.yml文件,该文件是引导文件,优先级高于application.yml。
spring: application: name: userservice #服务名称 profiles: active: dev # 环境 cloud: nacos: server-addr: 127.0.0.1:8848 # nacos地址 config: file-extension: yaml # 文件后缀名
-
配置热更新
两种方式:
- 方式一:通过@Value注入的变量,在所在类上添加注解@RefreshScope实现热更新
- 方式二:为注入变量创建一个属性类,在类上使用@ConfigurationProperties注解实现热更新。
注意事项:
- 不是所有配置都适合放到配置中心,维护起来比较麻烦
- 建议将一些关键参数,需要运行时调整的参数放到nacos配置中心,一般都是自定义配置。
多环境配置共享
实现
微服务启动时会从nacos读取多个配置文件:
- [spring.application.name]-[spring.profiles.active].yml,例如:userservice-dev.yml
- [spring.application.name].yml,例如:userservice.yml
无论profile如何变化[spring.application.name].yml这个文件一定会加载,因此多环境共享配置可以写入这个文件。
多种配置优先级
- 服务名-profile.yaml > 服务名称.yaml > 本地配置