SpringCloud Alibaba体系中是使用Nacos作为配置中心,这样Nacos既可以作为注册中心也可以作为配置中心,相当于SpringCloud中的Eukrea+config。

配置中心集成

1.引入配置中心组件

  1. <dependency>
  2. <groupId>org.springframework.cloud</groupId>
  3. <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
  4. </dependency>

2.在resources下面新建bootstrap.yml配置文件

spring:
  application:
    name: server-provider
  cloud:
    nacos:
      config:
        server-addr:  192.168.174.135:8848#指定nacos配置中心的地址
        file-extension: yml #指定文件后缀名
  1. 在nacos控制台建立配置文件
    Alibaba-Config配置中心 - 图1

4.重启测试
Alibaba-Config配置中心 - 图2

多环境管理

在Nacos中实现多环境管理很容易,可以通过Profiles,Group,Name三个维度实现

1.profiles

nacos配置中心的DATA ID就相当于一个配置文件的名称,前面一部分我们DATA ID默认命名方式为Alibaba-Config配置中心 - 图3{spring.cloud.nacos.config.file-extension}比如我们之前的配置文件server-provider.yml
如果我们在服务启动的时候指定了服务的环境名称那么我们的DATA-ID的命名方式就变成了Alibaba-Config配置中心 - 图4{spring.profiles.active}.${spring.cloud.nacos.config.file-extension}

2.实战,指定profile

在nacos当中建立多环境配置
Alibaba-Config配置中心 - 图5
Alibaba-Config配置中心 - 图6
Alibaba-Config配置中心 - 图7

我们在项目中创建application.yml指定环境

spring:
  profiles:
    active: test

Alibaba-Config配置中心 - 图8
采用8082端口去进行访问然后正常访问 说明nacos配置生效

Group

Group是DATA ID集合的概念,将同一个环境下的配置文件组成一个Group,在服务启动时通过指定spring.cloud.nacos.config.group属性可以让系统加载不同的配置文件。
Alibaba-Config配置中心 - 图9
Alibaba-Config配置中心 - 图10

NameSpace

NameSpace是nacos多环节下以及多租户数据隔离的,目前也是官方推荐的多环境支持方案。如果你的微服务有多套不通的环境,那么这个时候可以根据指定的环境来创建不通的namespace,以此来实现多环境

Alibaba-Config配置中心 - 图11
Alibaba-Config配置中心 - 图12
在bootstrap.yml 使用spring.cloud.nacos.config.namespace对应NameSpace的 data-id
改造完成之后启动项目进行测试