SpringCloud-06-Config远程配置

——其实到上篇05文章我们就已经把SpringCloudNetflix的五大神兽(Eureka、Ribbon、Feign、Hystrix、Zuul)给总结完了,这篇只是讲述一种实际工作当中常用的一种配置文件的方式!

1.什么是SpringCloud-Config

概述:Spring Cloud Config为分布式系统中的外部配置提供服务器和客户端支持。使用Config Server,您可以在所有环境中管理应用程序的外部属性。
——
人话:我们的客户端将ConfigServer作为一个中转站,间接的去获取到远程仓库的配置文件
在这里插入图片描述

2.如何使用SpringCloud-Config

步骤:

  1. 在远程仓库(Gitee/Github)创建一个自己的仓库,通过Git将配置文件(如:application.yaml)放在其中。

  2. 在这里插入图片描述

  3. 然后创建一个ConfigServer服务,跟传统的Springboot服务一样,然后在ConfigServer中

   	2.1 导入依赖  
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-config-server</artifactId>
        <version>2.1.1.RELEASE</version>
    </dependency>,
	//2.2 编写配置,
server:
  port: 3344

spring:
  application:
    name: springcloud-config-server
  #连接远程仓库
  cloud:
    config:
      server:
        git:
          uri: https://gitee.com/SongQiXiang/spring-cloud-study.git  #此处是https链接,不是ssh
                                                          # 通过 config-server可以连接到git,访问其中的资源以及配置~
	2.3 开启功能
	在主启动类上添加@EnabelConfigServer注解即可!
  1. ConfigServer配置完成后,我们开启此服务测试一下通过如下访问如下地址:判断当前server能否连接到远程仓库:http://localhost:3344/application-test.yaml
  2. 当server已经可以获取到远程仓库中的配置,我们就可以开始下一步客户端的配置了!
  3. 这里有一点需要清楚,这里的客户端指的是配置文件是通过ConfigServer中转站获取的,无论是注册中心还是消费者提供者,在这里统称为ConfigServer的客户端ConfigClient

  4. 创建注册中心、消费者、提供者的任意一种都可以,然后在其中导入ConfigClient的依赖
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-config</artifactId>
        <version>2.1.1.RELEASE</version>
    </dependency>
  1. 编写两个配置文件一个是application.yaml和Bootstrap.yaml其中他们都是可以被Springboot识别的默认文件,前者是用户级别配置,后者是系统级别配置,后者可以覆盖前者,我们在此时一般在application.yaml当中去配置当前服务名字等,我们的bootstrap.yaml用来连接Cnfigserver并且指定远程仓库的哪个配置文件中的哪个分支下的哪个文件模块profile.具体配置如下图:在这里插入图片描述
  2. 这样我们就可以加载到remote远程仓库当中的配置文件了

以上就是将配置文件放在gitee远程仓库的具体步骤,但是放在github当中需要进行一些额外的配置,如:修改默认分值为main等。。

3.使用远程配置的好处

  • 集中式管理配置文件
  • 不同环境,不同配置,动态化的配置更新,分环境部署,比如 /dev /test /prod /beta /release
  • 运行期间动态调整配置,不再需要在每个服务部署的机器上编写配置文件,服务会向配置中心统一拉取配置自己的信息
  • 当配置发生变动时,服务不需要重启,即可感知到配置的变化,并应用新的配置 将配置信息
  • REST接口的形式暴露
posted @ 2022-01-23 20:36  爪洼ing  阅读(70)  评论(0编辑  收藏  举报