Nacos 配置中心
文章目录
项目环境
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.5.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<java.version>1.8</java.version>
<spring-cloud.version>Hoxton.SR3</spring-cloud.version>
<com-alibaba-cloud.version>2.2.0.RELEASE</com-alibaba-cloud.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-nacos-config</artifactId>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>${com-alibaba-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
application.yml
server:
port: 8080
spring:
application:
name: nacos-config-test
bootstrap.yml
spring:
cloud:
nacos:
config:
server-addr: .....:8848
file-extension: yml # 读取文件格式
group: test-demo01 # 设置分组
prefix: nacos-config-text # 默认是项目名称
# namespace: #默认的命名空间 pubic
获取配置规则
Nacos 通过
nameespace、datald、group
来唯一确定一份配置
namespace: 命名空间。默认是publi ,控制台上方可见
datald : 配置文件名称
${prefix} - ${spring.profiles.active} - ${file-extension}
prefix 默认为
spring.application.name
,手动设置spring.cloud.nacos.config.prefix
spring.profiles.active 一般用于指定环境,可以为空
file-extension 配置内容数据格式,手动设置
spring.cloud.nacos.file-extension
group 配置分组,默认 DEFAULT_GROUP ,手动设置
spring.cloud.nacos.config.group
# 获取单个配置文件 看上面
# 获取多个配置文件
spring:
cloud:
nacos:
config:
server-addr: 119.91.60.82:8848
extension-configs:
- dataId: ext-config-one.yaml # 文件名
group: DEFAULT_GROUP #分组
refresh: true # 是否支持刷新
- dataId: ext-config-two.yaml
group: DEFAULT_GROUP
refresh: false
配置项 | yml | 默认值 | 作用 |
---|---|---|---|
文件编码方式 | spring.cloud.nacos.config.encode | UTF-8 | |
获取配置超时时间 | spring.cloud.nacos.config.timeout | 3000 | 单位ms |
相对路径 | spring.cloud.nacos.config.context-path | 服务端api相对路径 | |
接入点 | spring.cloud.nacos.config.endpoint | 地狱的某个服务的入口域名,通过此域名可以动态的拿到服务地址 | |
监听和自动刷新 | spring.cloud.nacos.config.refresh.enabled | true |