GuLi商城-SpringCloud Alibaba-Nacos配置中心-命名空间与配置分组

Nacos支持三种配置加载方方案

Nacos支持Namespace + group + data ID的配置解决方案

Namespace方案

通过命名空间实现环境区分

下面是配置实例:

1、创建命名空间:

命名空间—>创建命名空间:

创建三个命名空间,分别为dev,test和pre

2、回到配置列表中,能够看到所创建的三个命名空间 

下面我们需要在dev命名空间下,创建gulimall-coupon.properties配置规则: 

3、测试:

并没有使用我们在dev命名空间下所配置的规则,而是使用的是public命名空间下所配置的规则,

这是怎么回事呢? 

"gulimall-coupon.properties",默认就是public命名空间中的内容中所配置的规则。

4、指定命名空间

如果想要使得我们自定义的命名空间生效,需要在“bootstrap.properties”文件中,指定使用哪个命

名空间:

spring.cloud.nacos.config.namespace=00bf4f79-4103-4752-af8b-abff134b1d46

这个命名空间ID来源于我们在第一步所创建的命名空间

5、重启“gulimall-coupon”,再次测试ok 

但是这种命名空间的粒度还是不够细化,对此我们可以为项目的每个微服务module创建一个命名

空间。

6、为所有微服务创建命名空间

7、回到配置列表选项卡,克隆pulic的配置规则到coupon命名空间下

打开配置:

8、修改gulimall-coupon下的bootstrap.properties文件,添加如下配置信息

spring.cloud.nacos.config.namespace=b2041d1f-b8f1-45d4-9373-b0ce4027a28d

这里指明的是,读取时使用coupon命名空间下的配置。

9、重启“gulimall-coupon”,测试ok



DataID方案

通过指定spring.profile.active和配置文件的DataID,来使不同环境下读取不同的配置,读取配置

时,使用的是默认命名空间public,默认分组(default_group)下的DataID。

默认情况,Namespace=public,Group=DEFAULT GROUP,默认Cluster是DEFAULT

通过指定spring.profiles.active=dev可以指定xxx-dev.properties的配置文件


Group方案

通过Group实现环境区分

实例:通过使用不同的组,来读取不同的配置,还是以上面的gulimall-coupon微服务为例

1、coupon下新建“gulimall-coupon.properties”,将它置于“tmp”组下

2、修改“bootstrap.properties”配置,添加如下的配置

spring.cloud.nacos.config.group=tmp

注掉是错误的,要namespace保留 

3、重启“gulimall-coupon”,测试ok

实际开发中,group的名字为dev、test、pre

https://github.com/OYCodeSite/gulimall-learning/blob/master/docs/%E8%B0%B7%E7%B2%92%E5%95%86%E5%9F%8E%E2%80%94%E5%88%86%E5%B8%83%E5%BC%8F%E5%9F%BA%E7%A1%80.md

猜你喜欢

转载自blog.csdn.net/ZHOU_VIP/article/details/129713552