• SpringCloud Alibaba微服务实战五 - 配置隔离


    SpringCloud Alibaba微服务实战五- 配置隔离

    本篇作为SpringCloud Alibaba微服务实战系列的第五篇,主要内容是将所有的微服务接入Nacos配置中心并按环境进行隔离

    配置中心集成

    在SpringCloud Alibaba体系中是使用Nacos作为配置中心,这样Nacos既可以作为注册中心也可以作为配置中心,相当于SpringCloud中的Eureka + Config。要接入Nacos的配置中心也很简单,只需要如下几步:

    • 引入配置中心组件spring-cloud-starter-alibaba-nacos-config
     <!--nacos的服务配置中心-->
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
            </dependency>
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    • 在resource中新建文件bootstrap.yml,配置应用名称和注册中心地址
            <!--2020/2021的springcloud 才需要引入这个,不然无法读取Bootstrap.yaml文件-->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-bootstrap</artifactId>
            </dependency>
    
    • 1
    • 2
    • 3
    • 4
    • 5

    这里指定文件后缀为yaml

    • 在nacos控制台建立配置文件

    注:在客户端和server端对文件格式的声明要一致,例如在客户端声明的是yml,则server端添加配置文应该是${spring.application.name}.yml,若写成spring.application.name.yaml,则会找不到配置文件。

    如在我们的account-service中应该建立一个account-service.yaml文件,然后把原application.yaml的内容复制到里面即可,在nacos配置中可以删除spring.application.name配置。

    ```java
    spring:
      application:
        name: account_service
      cloud:
        nacos:
    #       username: nacos
    #       password: nacos
          config:
            server-addr: 119.23.176.114:8848
            file-extension: yaml
            namespace: 0f6a19be-9a28-4886-9fe4-f6f5a3ded824
            group: DEFAULT_GROUP  #切换环境 改组就行了
    
    #dev test prod。。。等环境
    
    
    ```
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18

    0

    • 运行测试

    测试服务功能是否正常

    是不是发现跑不起来?

    超级大坑

    SpringCloudAlibaba 2020/2021 无法加载bootstrap.yml文件问题

    加入该依赖即可:

            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-bootstrap</artifactId>
            </dependency>
    
    • 1
    • 2
    • 3
    • 4

    简单几步就可以将你的微服务集成Nacos的配置中心了,但是在实际开发中我们需要准备多个环境的配置文件(开发、测试、生产),接下来我们看看如何使用Nacos进行多环境配置管理。

    多环境管理

    在Nacos中实现多环境管理很容易,可以通过命名不同组实现。

    在这里插入图片描述

    在这里插入图片描述

    利用Nacos命名组方式的特性我们可以实现多环境配置管理。

    实战

    • 给系统指定环境名称(注意)

    ​ spring: profiles: active: DEV

    • 在Nacos中建立多套环境的配置

    0

    • 启动应用,观察后端启动日志

    • 在Nacos中建立多套环境的配置

    在这里插入图片描述

    • 启动应用,观察后端启动日志

    在这里插入图片描述

  • 相关阅读:
    计算机系统(21)----- 信号量实现进程互斥、同步、前驱关系
    Centos7系统下挂载超过2TB的目录
    卸载无用Mac电脑软件应用程序方法教程
    Teambition企业内部应用开发指南
    独立部署自己专属的答题小程序有什么好处
    Linux基本操作符(2)
    挑战字节软件测试岗,原来这么轻松...
    【JavaWeb - 网页编程】七 HTTP 协议 与 Servlet 技术
    图书出版如何做好软文营销
    apache进程框架commons-exec,Java
  • 原文地址:https://blog.csdn.net/weixin_50098749/article/details/125439943