【Spring Cloud 系列】 Nacos Config 自定义创建 Namespace 和 Group

918 阅读1分钟

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

Namespace
  • 在Nacos控制台的命令空间菜单下,创建一个命名空间
  • 在bootstrap.yml中添加如下配置
spring:
	cloud:
	  nacos:
	  	config:
	  		namespace:xxx(对应Namespace中命令空间的ID)
Group

Group不需要提前创建,只需要在创建时指定,配置方法如下:

  • 在Nacos控制台的【新建配置】页面中指定配置所属的Group
  • 在bootstrap.yml中添加以下配置
spring:
	cloud: 
		nacos:
			config:
				group: DEV_GROUP
Data ID

Data ID 是Nacos中某个配置集的ID,用于划分系统的配置集,通过配置文件的名字来进行配置划分,也可以通过Java包全路径来划分,主要取决于Data Id的使用维度。

Spring Cloud Alibaba Nacos Config支持自动以Data ID配置

spring.cloud.nacos.config.ext-config[0].data-id=server1.properties
spring.cloud.nacos.config.ext-config[0].group=DEFAULT_GROUP
spring.cloud.nacos.config.ext-config[0].refresh=true

相关参数说明

  • spring.cloud.nacos.config.ext-config[n]:支持多个Data ID的扩展配置,包含三个属性:data id、group和refresh
  • spring.cloud.nacos.config.ext-config[n].data-id:指定Nacos Config的Data ID
  • spring.cloud.nacos.config.ext-config[n].group: 指定Data ID所在的组
  • spring.cloud.nacos.config.ext-config[n].refresh:控制Data ID在配置发生变更时是否需要动态感知最新的配置值。默认是false,不会实现动态刷新。

注意点:

  • spring.cloud.nacos.config.ext-config[n].data-id的值必须带文件的扩展名,如properties、yaml等。
  • spring.cloud.nacos.config.ext-config[n].data-id配置多个Data ID时,n的值越大,优先级越高

通过自定义扩展Data ID配置,可解决多个应用配置共享问题,在一个应用有多个配置文件时,注意在ext-config和spring..application.name.{spring..application.name}.{file-extension:properties}都存在下,后者的优先级较高。