Spring cloud config 入门使用及指导说明(单机篇)
2018-01-09 13:45
861 查看
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 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如下<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.test</groupId> <artifactId>config-server</artifactId> <version>0.0.1-SNAPSHOT</version> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.9.RELEASE</version> <relativePath /> </parent> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>Camden.RELEASE</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-config-server</artifactId> </dependency> <dependency> <groupId>org.tmatesoft.svnkit</groupId> <artifactId>svnkit</artifactId> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <plugin> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> </plugins> </build> </project>
第二步:新建一个启动类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如下<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.tesr</groupId> <artifactId>config-client</artifactId> <version>0.0.1-SNAPSHOT</version> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.9.RELEASE</version> <relativePath /> </parent> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-config-client</artifactId> <version>1.4.0.RELEASE</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <plugin> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> </plugins> </build> </project>
第二步:新建配置文件(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/springcloudconfig9fba
相关文章推荐
- Spring cloud eureka 入门使用及指导说明(单机篇)
- Spring Cloud入门2——配置中心Config
- Spring Cloud入门之Spring Cloud Config
- spring cloud config学习入门初探
- spring cloud config 入门 简介
- spring-cloud-config service使用svn作为远程的例子
- spring基础:快速入门spring cloud(6):统一配置管理之spring cloud config
- spring-cloud中config配置中心使用(基本使用)
- spring cloud config开发使用
- Spring Cloud Config客户端使用
- Spring Cloud Config 分布式配置中心使用教程
- springcloud(第一篇)springcloud config 入门
- spring-cloud中config配置中心使用(基于eureka的高可用)
- Spring Cloud--Eureka(一)入门使用
- spring clound 之 springcloud config 入门
- Spring Cloud入门一:Spring Cloud Config
- spring cloud config server 使用本地配置文件报错
- Spring Cloud Config集中式配置管理使用
- SpringCloud Config 配置中心 svn使用
- Spring Cloud config之一:分布式配置中心入门介绍