十三.配置文件做服务以及环境的隔离

一.使用命名空间隔离服务

这里以webshop-order服务和webshop-member服务为例,在Nacos Server上为这两个服务建立专有的命名空间,默认使用的命名空间是保留空间public,如下:
十三.配置文件做服务以及环境的隔离
十三.配置文件做服务以及环境的隔离
十三.配置文件做服务以及环境的隔离
至于命名空间ID就由nacos为我们自动生成,后面会用到这id。

在member命名空间下新建webshop-member.properties配置文件,信息如下:
十三.配置文件做服务以及环境的隔离
在order命名空间下新建webshop-order.properties配置文件,信息如下:
十三.配置文件做服务以及环境的隔离
分别在webshop-order服务和webshop-member服务的bootstrap.properties添加上命名空间的属性和值,这里的值就是之前创建命名空间时,nacos为我们自动生成的空间id,如下:
十三.配置文件做服务以及环境的隔离
十三.配置文件做服务以及环境的隔离
十三.配置文件做服务以及环境的隔离
十三.配置文件做服务以及环境的隔离
分别在webshop-order服务和webshop-member服务的某个controller类写个测试接口,读取配置中心的配置文件中的属性值,如下:
十三.配置文件做服务以及环境的隔离
十三.配置文件做服务以及环境的隔离
启动webshop-order服务和webshop-member服务,访问测试的的接口,结果如下:
十三.配置文件做服务以及环境的隔离
十三.配置文件做服务以及环境的隔离
说明了配置文件实现了服务间的隔离。

二.使用分组隔离环境

这里把服务的环境划分为开发环境(dev),测试环境(test),生产环境(prod),预上线环境(rls)就先不划入其中了,以webshop-order服务为例,分别创建出Group是dev,test以及prod的配置文件,如下:
十三.配置文件做服务以及环境的隔离
十三.配置文件做服务以及环境的隔离
十三.配置文件做服务以及环境的隔离
webshop-order服务的bootstrap.properties添加上分组的属性和值,这里的值就是之前新建配置文件时填入的Group的值,如下:
十三.配置文件做服务以及环境的隔离
访问测试接口,结果如下:
十三.配置文件做服务以及环境的隔离
bootstrap.properties的group属性值从dev换成prod
十三.配置文件做服务以及环境的隔离
结果如下:
十三.配置文件做服务以及环境的隔离
实现了服务的环境隔离。

使用命名空间加上分组可以实现为各个微服务定义上每个环境的配置文件。