目录
1. Nacos 配置中心快速入门
版本控制:
- Spring Cloud 版本为Hoxton.SR9
- Spring Cloud Alibaba 版 本 为 2.2.6.RELEASE
- Spring Boot 版 本 为2.3.2.RELEASE
1.1 导入依赖
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
1.2 在 Nacos 中新建一个 powernode 的命名空间
生成了一个 id,记住这个 id:682694f9-214b-4afb-9f10-64b2e602d7c4
1.3 NacosServer 里面添加一个配置文件
1.4 项目中添加一个配置文件 bootstrap.yml
server:
port: 8188
spring:
application:
# 应用名称
name: config-client-a
profiles:
# 环境配置
active: dev
cloud:
nacos:
discovery:
# 服务注册地址
server-addr: localhost:8848
namespace: 682694f9-214b-4afb-9f10-64b2e602d7c4
config:
# 配置中心地址
server-addr: localhost:8848
namespace: 682694f9-214b-4afb-9f10-64b2e602d7c4
# 配置文件格式
file-extension: yml
# 共享配置
shared-configs:
- application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
2. Nacos 获取多配置文件
修改项目的配置文件
server:
port: 8080
spring:
application:
name: config-client-a
cloud:
nacos:
config:
server-addr: localhost:8848
namespace: 5510ef39-ca9a-4f5d-87ba-7fb2afbf7035 # 命名空间 注意使用 id
extension-configs: # 配置多个配置文件 数组形式
- data-id: config-a.yml # 配置 id,必须要加文件后缀
group: GROUP_A # 组别
refresh: true # 是否支持刷新,是
- data-id: config-b.yml
group: GROUP_B
refresh: false # 是否支持刷新,否
说明:
- spring.cloud.nacos.config.extension-configs[n].dataId , 指 定 多 个 配 置 的dataId,必须包含文件格式,支持 properties、yaml 或 yml;
- spring.cloud.nacos.config.extension-configs[n].group,指定分组;
- spring.cloud.nacos.config.extension-configs[n].refresh,是否支持刷新。
上面的配置中,我们分别从 DEFAULT_GROUP 中获取了 config-a.yml 和 config-b.yml 配置内容,并且 config-a.yml 支持刷新,config-b.yml 不支持刷新。
3. Nacos Config 常用的配置
3.1 Config 常用配置
配置项 | Key | 默认值 | 说明 |
---|---|---|---|
服务端地址 | spring.cloud.nacos.config.server-addr | ||
DataId 前缀 | spring.cloud.nacos.config.prefix | spring.application.name | |
Group | spring.cloud.nacos.config.group | DEFAULT_GROUP | |
dataID 后缀及内容文件格式 | spring.cloud.nacos.config.file-extension | properties | dataId 的后缀,同时也是配置内容的文件格式,properties/yaml |
配置内容的编码方式 | spring.cloud.nacos.config.encode | UTF-8 | 配置的编码 |
获取配置的超时时间 | spring.cloud.nacos.config.timeout | 3000 | 单位ms |
配置的命名空间 | spring.cloud.nacos.config.namespace | 常用场景之一是不同环境的配置的区分隔离,例如开发测 | |
是否开启监听和自动刷新 | spring.cloud.nacos.config.refresh.en abled | true |
3.2 bootstrap.yml 模板
server:
port: 8188
spring:
application:
# 应用名称
name: config-client-a
profiles:
# 环境配置
active: dev
cloud:
nacos:
discovery:
# 服务注册地址
server-addr: localhost:8848
namespace: 682694f9-214b-4afb-9f10-64b2e602d7c4
config:
# 配置中心地址
server-addr: localhost:8848
namespace: 682694f9-214b-4afb-9f10-64b2e602d7c4
# 配置文件格式
file-extension: yml
# 共享配置
shared-configs:
- application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
标签:spring,配置,Nacos,Alibaba,nacos,Spring,config,yml,cloud
From: https://www.cnblogs.com/lihw/p/17526686.html