Spring cloud config 入门使用及指导说明(单机篇)

1、基本概念和方案

Spring config 项目提供了一个解决分布式系统的配置管理方案。它包含了Client和Server两个部分。
Spring cloud config Server 管理git或svn的外部配置,集中配置到所有客户端。
Spring cloud config Client 根据Spring框架的Environment和PropertySource从Spring cloud config Server 获取配置。

逻辑架构图如下:

Spring cloud config 入门使用及指导说明(单机篇)_第1张图片

Spring cloud config Server统一管理存储在git或者svn的配置文件,各子系统A、B集成Spring cloudconfig Client,并从Spring cloud config Server端获取相关的配置。

Spring cloud config Server 可通过Eureka Server支持集群负载均衡。

2、搭建Config Server

  第一步:创建一个spring boot 项目,config-server,pom.xml如下


  4.0.0
  com.test
  config-server
  0.0.1-SNAPSHOT

    
	org.springframework.boot  
	spring-boot-starter-parent  
	1.5.9.RELEASE  
	 
    


    
        
            org.springframework.cloud
            spring-cloud-dependencies
            Camden.RELEASE
            pom
            import
        
    


  
    
        org.springframework.cloud
        spring-cloud-config-server
    
	
    	org.tmatesoft.svnkit
    	svnkit
	
  
  

	
		  
    		org.springframework.boot  
    		spring-boot-maven-plugin  
    	  
	
        	maven-compiler-plugin
        	
          	1.8
          	1.8
        	
    	
	

第二步:新建一个启动类Application

@SpringBootApplication
@EnableConfigServer
public class Application
{

    public static void main(String[] args)
    {
        SpringApplication.run(Application.class, args);
    }

}

第三步:新建配置文件(src/main/resources),application.properties

SVN配置:(默认读取spring-config/trunk下的配置文件,根据实际情况修改)

server.port=9955

spring.profiles.active=subversion
spring.cloud.config.server.svn.uri=http://127.0.0.1:8090/svn/spring-config
spring.cloud.config.server.svn.username=test
spring.cloud.config.server.svn.password=test
#spring.cloud.config.server.svn.search-paths={application}
spring.cloud.config.server.svn.default-label=trunk
#spring.cloud.config.server.svn.basedir=/data
Git配置:

server.port=9955

spring.cloud.config.server.git.uri=https://github.com/huanghuixj/springcloudconfig.git
#spring.cloud.config.server.git.searchPaths=respo
spring.cloud.config.label=master
#spring.cloud.config.server.git.username=test
#spring.cloud.config.server.git.password=test

  • spring.cloud.config.server.git.uri:配置git仓库地址
  • spring.cloud.config.server.git.searchPaths:配置仓库路径
  • spring.cloud.config.label:配置仓库的分支
  • spring.cloud.config.server.git.username:访问git仓库的用户名
  • spring.cloud.config.server.git.password:访问git仓库的用户密码

第四步:构建并启动程序,测试访问

浏览器中输入,http://127.0.0.1:9955/jdbc-test.properties,或者http://127.0.0.1:9955/jdbc/test

3、搭建Config Client

第一步:创建一个Spring boot项目,config-client,pom.xml如下


  4.0.0
  com.tesr
  config-client
  0.0.1-SNAPSHOT
  
        
        org.springframework.boot  
        spring-boot-starter-parent  
        1.5.9.RELEASE  
         
      
  
    
      
        org.springframework.boot  
        spring-boot-starter-web  
      
    
      
        org.springframework.cloud  
        spring-cloud-config-client  
        1.4.0.RELEASE
      
    
  
  
    
	  
		org.springframework.boot  
		spring-boot-maven-plugin  
	  
	
        	maven-compiler-plugin
        	
        	1.8
        	1.8
         
       
    
  

第二步:新建配置文件(src/main/resources),bootstrap.properties

#multiple files separated by commas ","
spring.cloud.config.name=jdbc,log
spring.cloud.config.profile=test

#if svn server then trunk, if git server then master
spring.cloud.config.label=trunk

#spring cloud server address 
spring.cloud.config.uri=http://127.0.0.1:9955

第三步:新建启动测试类Application,浏览器shuru

@SpringBootApplication
@RestController
public class Application 
{

    public static void main(String[] args) 
	{
        SpringApplication.run(Application.class, args);
    }

    @Value("${foo}")
    private String foo;
	
    @RequestMapping(value = "/hi")
    public String hi()
	{
        return foo;
    }
}

4、Demo下载,Git地址

https://github.com/huanghuixj/springcloudconfig








你可能感兴趣的:(Spring)