SpringCloud之分布式配置中心组件Config从本地读取配置文件
发布日期:2021-05-06 15:33:29 浏览次数:30 分类:原创文章

本文共 2355 字,大约阅读时间需要 7 分钟。

一:Config Server简介

  1.  简介
            Config Server可以从本地仓库读取配置文件,也可以从远处Git仓库读取。本地仓库是指
     将所有的配置文件统一写在Config Server工程目录下。Config Server暴露Http API接口,Config
     Client通过调用Config Server的Http API接口来读取配置文件。       

二:实战之Config Server从本地读取配置文件

  1. 创建parent主MAVEN工程
           
           pom.xml文件内容
           
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">  <modelVersion>4.0.0</modelVersion>  <groupId>com.kgf</groupId>  <artifactId>parent</artifactId>  <version>0.0.1-SNAPSHOT</version>  <packaging>pom</packaging>  <name>parent</name>     <!--继承一个父模块,然后再引入相应的依赖  -->  <parent>  	  <groupId>org.springframework.boot</groupId>	  <artifactId>spring-boot-starter-parent</artifactId>	  <version>2.0.3.RELEASE</version>	  <!--relativePath是可选的,maven会首先搜索这个地址,在搜索本地远程repositories之前  -->	  <relativePath />  </parent>    <properties>  	 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>  	 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>  	 <java-version>1.8</java-version>  	 <spring-cloud.version>Finchley.RELEASE</spring-cloud.version>  </properties>    <!--下面的方式通过import可以实现多继承的问题  -->  <dependencyManagement>  	<dependencies>  	    <dependency>	  		<groupId>org.springframework.cloud</groupId>		    <artifactId>spring-cloud-dependencies</artifactId>		    <version>${spring-cloud.version}</version>		    <type>pom</type>		    <scope>import</scope>  	    </dependency>  	</dependencies>  </dependencyManagement></project>

     

  2. 构建子服务Config Server
             
            ⑴创建启动类SpringCloudConfigServer.java
                      
                      这里需要注意的就是使用@EnableConfigServer注解去开启ConfigServer功能
            ⑵ 创建application.yml文件
                        
                       search-locations:通过这个属性指定客户端读取配置文件的路径
                       spring.profiles.active=native:表示从本地读取配置
            ⑶ shared路径下的 config-client-dev.yml文件,这个文件是Config的客户端需要读取的
                       
            ⑷pom.xml文件
                   
  3. 构建子服务config-client
            
           ⑴创建启动类SpringCloudConfigClientApplication.java
                       
           ⑵创建bootstrap.yml文件
                       
                       注意:这里我们为什么使用的是bootstrap.yml,而不是application.yml文件,因为bootstrap.yml
                                  文件相对于application.yml具有优先的执行顺序。这里我们指定了程序名为config-client.
                                  并且向Url地址为http://localhost:8769的Config Server读取配置文件。如果没有读取成功,
                                  则执行快速失败(fail-fast)。那么这个客户端是如何找到Config Server服务端给它提供的指定
                                  的配置文件的呢?这个主要是默认拼接bootstrap.yml中的两个属性变量:${spring.application.name},
                                  ${spring.profiles.active},两者以“-”相连,这样就构成了Config Server中读取的文件名了,就是
                                  config-client-dev.yml文件。
           ⑶pom.xml文件
                
  4. 测试,启动config server以及config client两个服务
       请求客户端的路径为:
                   
上一篇:SpringCloud之分布式配置中心组件Config从远程Git仓库读取配置文件
下一篇:Spring Cloud之路由网关Zuul

发表评论

最新留言

逛到本站,mark一下
[***.202.152.39]2025年03月21日 21时45分52秒