nacos作为配置中心的简单使用
-
nacos服务端(这里采用wndows版单机启动,也可以配置集群等)
-
从 Nacos 官网 下载
nacos-server-$version.zip
包,解压到指定目录。 -
Windows 中,打开解压目录下的 \bin\startup.cmd 启动服务。或者通过 startup.cmd -m standalone 单机启动。
* -
启动成功后,Nacos 服务就运行起来了。在浏览器中输入 http://127.0.0.1:8848/nacos/index.html,就可以打开 Nacos 控制台:
-
使用默认账号密码(nacos/nacos),就可以登陆控制台。
*
-
-
nacos客户端
-
添加依赖
-
<!--nacos config--> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> <version>${nacos-config.version}</version> </dependency>
-
-
创建bootstrap.yml配置文件
-
spring: profiles: active: dev application: name: consumer cloud: nacos: config: server-addr: localhost:8848 namespace: d30f70d7-5874-4577-bcfc-5f9274a064fa group: mini-promotion prefix: consumer-main file-extension: yaml
-
这里配置的 spring.application.name,会作为 Nacos 配置管理 dataId 字段的一部分。dataId 的完整格式如下:
-
${prefix}-${spring.profile.active}.${file-extension}
-
-
字段介绍
- prefix
- 默认为 spring.application.name 的值,也可以通过配置项 spring.cloud.nacos.config.prefix来配置
- spring.profile.active
- 当前环境对应的 profile。当 spring.profile.active 为空时,对应的连接符 - 也将不存在,dataId 的拼接格式变成prefix.{file-extension}。
- file-exetension
- 配置内容的数据格式,可以通过配置项 spring.cloud.nacos.config.file-extension 来配置。目前只支持 properties 和 yaml 类型。
- prefix
-
在实际的 Spring Bean 类中,加入业务工程所需要配置项。形如:
-
首先在业务类上加入
@RefreshScope
,这样当配置中心的配置值发生变化时,业务类所引用的值就会自动更新。哪一个类需要动态更新配置,就在哪一个类上加上这个注解。 -
打开nacos控制台,新建一个namespace
-
在你新建的命名空间下添加配置文件
*
*
-
这里的namespace和group分别对应bootstrap配置文件中的namespace和group
-
启动项目
-
-
总结
- 当项目启动时,首先会加载bootstrap.yml配置文件,然后根据其中配置的nacos地址和要拉取的配置文件的相关信息,去nacos拉取对应的配置文件,然后根据拉取下来的配置文件重新启动项目。