在微服務的體系中,一個項目有十幾個甚至幾十個微服務是很正正常的,那麼在修改配置文件的時候就會出現一個很煩的事情,就是我需要一個服務一個服務的去修改配置文件,而且有時候爲了服務的健壯性,會把一個微服務部署多個實例,那麼要修改的配置文件就更多了,爲了解決這個問題,Spring Cloud團隊開發了一個全新的組件Spring Cloud Config。
Spring Cloud Config簡介
Spring Cloud Config由兩部分組成:server 和 client。
server的作用是:連接配置倉庫,並且爲client提供配置信心加密、解密的訪問接口
client的作用是:
server支持的配置倉庫有:git倉庫、svn倉庫和本地文件系統,其中git倉庫是Spring Cloud Config支持的默認倉庫
使用本地文件系統
使用svn倉庫
使用git倉庫
pom.xml配置:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.3.7.RELEASE</version>
<relativePath/>
</parent>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Brixton.SR5</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-config-server</artifactId>
</dependency>
</dependencies
引導類:
@EnableConfigServer
@SpringBootApplication
public class Application{
public static void main(String[] args){
SpringApplication.run(Applicaion.class,args);
}
}
application.properties配置:
spring.application.name=config-server
server.port=7001
spring.cloud.config.server.git.uri=http://git.oschina.net/didispace/SpringCloudLearning/
spring.cloud.config.server.git.searchPaths=spring_cloud_in_action/config-repo
spring.cloud.config.server.git.username=username
spring.cloud.config.server.git.password=password
spring.cloud.config.server.git.uri:配置git倉庫的地址
spring.cloud.config.server.git.searchPaths:配置具體的配置文件位置
spring.cloud.config.server.git.username:配置git倉庫的用戶名
spring.cloud.config.server.git.password:配置git倉庫的密碼