多环境管理
在Nacos中,通过Data ID
、Group
、Namespace
三种属性实现多环境的管理,通过这三种属性可以组合出很多种用法,官方对此也没有固定规定,因此只需要根据业务选择具体的组合方式。
本节代码将在上一节的基础上进行修改,代码示例可以查看模块
alibaba-nacos-config-client-profiles
使用Data ID
与profiles
实现
Data ID
对应配置文件中的spring.application.name
或spring.cloud.nacos.config.prefix
;Data ID
默认情况下是${spring.application.name}.properties
,当同时存在prefix和name时,Data ID
是${spring.cloud.nacos.config.prefix}.properties;
- 末尾的
.properties
可以通过spring.cloud.nacos.config.file-extension
进行修改; - 同时,
Data ID
可以识别spring.profiles.active
进行不同环境的配置加载,这时Data ID
是${spring.cloud.nacos.config.prefix}-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
,这也是完整的Data ID
匹配规格。
第一步:在Nacos新建配置
第二步:修改bootstrap.properties
中配置
spring.application.name=alibaba-nacos-config-client
server.port=8002
spring.profiles.active=dev
spring.cloud.nacos.config.server-addr=127.0.0.1:8848
第三步:curl访问HTTP接口,查看配置内容是否加载成功:
wujiawei@wujiaweideMacBook-Pro ~ % curl http://localhost:8002/echo
alibaba-nacos-config-client-dev.properties
使用Group
实现
第一步:在Nacos中创建不同Group的配置
第二步:修改bootstrap.properties
spring.application.name=alibaba-nacos-config-client
server.port=8002
spring.cloud.nacos.config.server-addr=127.0.0.1:8848
spring.cloud.nacos.config.group=DEV_GROUP
第三步:curl请求HTTP接口
wujiawei@wujiaweideMacBook-Pro ~ % curl http://localhost:8002/echo
DEV_GROUP alibaba-nacos-config-client.properties
使用Namespace
实现
这时最常用的配置方式,同时也是官方建议的方式,保证配置内容不会杂而混乱。
第一步:在Nacos中创建Namespace
及配置
第二步:修改bootstrap.properties
其中namespace
的值为命名空间ID,注意是ID
spring.application.name=alibaba-nacos-config-client
server.port=8002
spring.cloud.nacos.config.server-addr=127.0.0.1:8848
spring.cloud.nacos.config.namespace=dev
第三步:启动应用,curl访问接口
wujiawei@wujiaweideMacBook-Pro ~ % curl http://localhost:8002/echo
alibaba-nacos-config-client..namespace..dev
代码示例
- Github:
- Gitee: