Nacos配置
bootstrap.yml>bootstrap.yaml>bootstrap.properties>nacos的配置>application.yml>application.yaml>application.properties
spring-cloud-starter-alibaba-nacos-config 在加载配置的时候,不仅仅加载了以 dataid 为 ${spring.application.name}.${file-extension:properties} 为前缀的基础配置,还加载了dataid为 ${spring.application.name}-${profile}.${file-extension:properties} 的基础配置。在日常开发中如果遇到多套环境下的不同配置,可以通过Spring 提供的 ${spring.profiles.active} 这个配置项来配置。
各类型配置文件常规用法
bootstrap.yml : 指定服务名称、nacos地址等,连接nacos 和读取配置必须的参数。
application.yml : 本地配置信息。一些常规的配置。
${spring.application.name}-${profile}.${file-extension:properties} : nacos上配置,覆盖本地配置。放一些有动态调整需求的配置比如:数据源配置、redis地址等。
基本概念
推荐用法
- 官方推荐用 Namespace 区分环境,用 Group 分组管理业务。
- 在启动参数中传入-Dspring.profiles.active=dev|test|prod 指定环境。
Nacos 配置加载规则
1. dataID 默认
默认拼接:${spring.cloud.nacos.config.prefix}-${spring.profile.active}.${spring.cloud.nacos.config.file-extension}
配置前缀 spring.cloud.nacos.config.prefix 默认值 spring.application.name(服务名)。
当前环境 默认值 spring.profiles.active 。为空时链接符号-会自动去掉。
配置格式 spring.cloud.nacos.config.file-extension 默认 properties。
简化后,有profile:${spring.application.name}-${spring.profile.active}.properties
简化后,无profile:${spring.application.name}.properties
2. group 默认
group 默认为 DEFAULT_GROUP,可通过 spring.cloud.nacos.config.group 配置。
3. namespace 默认
namespace 默认 Public, 可通过 spring.cloud.nacos.config.namespace 配置。