javascript
SpringCloud配置中心高可用搭建
本文通過config server連接git倉庫來實現(xiàn)配置中心,除了git還可以使用svn或者系統(tǒng)本地目錄都行。
引入依賴
<dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-config-server</artifactId></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-eureka</artifactId></dependency> </dependencies>spring-cloud-config-server這個就是配置中心server的依賴。
配置中心做到高可用本身也需要向注冊中心注冊自己的實例,所以需求引用spring-cloud-starter-eureka依賴。
添加啟動類,開啟Config Server功能
@EnableDiscoveryClient @EnableConfigServer @SpringBootApplication public class ConfigApplication {public static void main(String[] args) {SpringApplication.run(ConfigApplication.class, args);}}@EnableConfigServer:即開啟配置服務(wù)器的功能。
@EnableDiscoveryClient:開啟自動注冊客戶端,默認情況下,ServiceRegistry實現(xiàn)將自動注冊正在運行的服務(wù)。如注冊中心使用是Eureka,這里也可以使用的@EnableEurekaClient注解。
添加Config配置
spring:application:name: config-centerprofiles:active: config-center1cloud:config:server:git:uri: ${git.uri}searchPaths: ${git.searchPaths}username: ${git.username}password: ${git.password}basedir: ${git.basedir}clone-on-start: trueforce-pull: trueeureka:instance:prefer-ip-address: true ?instance-id: ${spring.cloud.client.ipAddress}:${server.port}lease-expiration-duration-in-seconds: ${lease-expiration-duration-in-seconds}lease-renewal-interval-in-seconds: ${lease-renewal-interval-in-seconds}client:serviceUrl:defaultZone: ${register-center.urls}--- spring:profiles: config-center1server:port: ${config-center1.server.port}--- spring:profiles: config-center2server:port: ${config-center2.server.port}這里配置了兩臺Config Server,都注冊到了兩臺注冊中心上。
Maven filter配置
#git git.uri=http://gitlab.example.com/test/config.git git.username=root git.password=root git.searchPaths=config-center git.basedir=f:/config/config-center/gitSpring Cloud Git配置詳解
spring.cloud.config.server.git.uri:git倉庫地址。
spring.cloud.config.server.git.searchPaths:git倉庫搜索目錄。
spring.cloud.config.server.git.username:連接git的用戶名。
spring.cloud.config.server.git.password:連接git的用戶名密碼。
spring.cloud.config.server.git.basedir:配置中心在本地緩存配置的目錄。
spring.cloud.config.server.git.clone-on-start:配置為true表示啟動時就克隆配置緩存到本地。
spring.cloud.config.server.git.force-pull:配置為true表示如果本地副本是臟的,將使Spring Cloud Config Server強制從遠程存儲庫拉取配置。
啟動配置中心
分別啟動以下配置中心,使用不同的Profile指定端口。
spring-boot:run -Drun.profiles=config-center1 -P dev spring-boot:run -Drun.profiles=config-center2 -P dev?
總結(jié)
以上是生活随笔為你收集整理的SpringCloud配置中心高可用搭建的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 分布式服务防雪崩熔断器,Hystrix理
- 下一篇: Spring Cloud 微服务架构的五