一、简介

在分布式系统中,由于服务数量巨多,为了方便服务配置文件统一管理,实时更新,所以需要分布式配置中心组件。在Spring Cloud中,有分布式配置中心组件spring cloud config ,它支持配置服务放在配置服务的内存中(即本地),也支持放在远程Git仓库中。在spring cloud config 组件中,分两个角色,一是config server,二是config client。

二、构建Config Server

创建一个spring-boot项目,取名为config-server,其pom.xml:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
<?xml version="1.0" encoding="UTF-8"?>
<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.forezp</groupId>
<artifactId>config-server</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>config-server</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.2.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-config-server</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka</artifactId>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Camden.SR6</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
<repositories>
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
</project>

  在程序的入口Application类加上@EnableConfigServer注解开启配置服务器的功能,代码如下:

1
2
3
4
5
6
7
8
@SpringBootApplication
@EnableConfigServer
public class ConfigServerApplication {
public static void main(String[] args) {
SpringApplication.run(ConfigServerApplication.class, args);
}
}

  需要在程序的配置文件application.properties文件配置以下:

1
2
3
4
5
6
7
8
9
spring.application.name=config-server
server.port=8888
spring.cloud.config.server.git.uri=https://github.com/forezp/SpringcloudConfig/
spring.cloud.config.server.git.searchPaths=respo
spring.cloud.config.label=master
spring.cloud.config.server.git.username=your username
spring.cloud.config.server.git.password=your password

  

  • 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仓库的用户密码

如果Git仓库为公开仓库,可以不填写用户名和密码,如果是私有仓库需要填写,本例子是公开仓库,放心使用。

远程仓库github.com/forezp/Spri… 中有个文件config-client-dev.properties文件中有一个属性:

1
foo = foo version 3

  启动程序:访问http://localhost:8888/foo/dev

1
2
{"name":"foo","profiles":["dev"],"label":"master",
"version":"792ffc77c03f4b138d28e89b576900ac5e01a44b","state":null,"propertySources":[]}

  架构代码如下:

需要JAVASpring Cloud大型企业分布式微服务云构建的B2B2C电子商务平台源码请加企鹅求求:一零三八七七四六二六

转载于:https://juejin.im/post/5ca4805be51d45043c2d18dc

Java B2B2C o2o多用户商城 springcloud架构 (六)分布式配置中心(Spring Cloud Config)相关推荐

  1. (十)Java B2B2C o2o多用户商城 springcloud架构- SSO单点登录之OAuth2.0登录认证(1)

    2019独角兽企业重金招聘Python工程师标准>>> 之前写了很多关于spring cloud的文章,今天我们对OAuth2.0的整合方式做一下笔记,首先我从网上找了一些关于OAu ...

  2. Java B2B2C o2o多用户商城 springcloud架构-docker-feign-hystrix(六)

    2019独角兽企业重金招聘Python工程师标准>>> 简介 上一节我们讨论feign的配置,这节我们讨论一下,feign+hystrix调用生产者时,进行容错处理 一.创建模块(m ...

  3. (四)Java B2B2C o2o多用户商城 springcloud架构-断路器(Hystrix)

    2019独角兽企业重金招聘Python工程师标准>>> 在微服务架构中,根据业务来拆分成一个个的服务,服务与服务之间可以相互调用(RPC),在Spring Cloud可以用RestT ...

  4. 史上最简单的SpringCloud教程 | 第六篇: 分布式配置中心(Spring Cloud Config)

    转:https://blog.csdn.net/forezp/article/details/70037291 最新版本: 史上最简单的SpringCloud教程 | 第六篇: 分布式配置中心(Spr ...

  5. 史上最简单的SpringCloud教程 | 第七篇: 高可用的分布式配置中心(Spring Cloud Config)(Finchley版本)

    转载请标明出处: http://blog.csdn.net/forezp/article/details/81041045 本文出自方志朋的博客 个人博客纯净版:https://www.fangzhi ...

  6. 从零学SpringCloud系列(八):分布式配置中心Spring Cloud Config

    一.快速入门 1.1 项目版本 spring boot:2.2.5.RELEASE spring cloud:Hoxton.SR3 1.2 项目地址 https://github.com/zhengh ...

  7. (十四)Java springcloud B2B2C o2o多用户商城 springcloud架构- Spring Cloud构建分布式电子商务平台...

    通过Spring Cloud构建PC+微信+APP+云服务的云商平台系统,其中包括B2B.B2C.C2C.O2O.新零售.直播电商等子平台,之前我们讲了很多关于Spring Cloud的概念文章,从本 ...

  8. Java springcloud B2B2C o2o多用户商城 springcloud架构

    Spring cloud b2b2c电子商务社交平台源码请加企鹅求求:一零三八七七四六二六.用java实施的电子商务平台太少了,使用spring cloud技术构建的b2b2c电子商务平台更少,大型企 ...

  9. java B2B2C Springcloud多租户电子商城系统-(七)高可用的分布式配置中心(Spring Cloud Config)...

    讲述了一个服务如何从配置中心读取文件,配置中心如何从远程git读取配置文件,当服务实例很多时,都从配置中心读取文件,这时可以考虑将配置中心做成一个微服务,将其集群化,从而达到高可用,架构图如下: 一. ...

最新文章

  1. CUDA tool URL
  2. 汇编指令中的字母会区分大小写吗?(除了字符型数据,其他地方都不区分)
  3. 原始dao和Mapper动态代理的开放方式---Mybatis学习笔记(六)
  4. 查看SQL Server当前会话的隔离级别
  5. elk替代_Go进阶45:Golang简洁的日志收集系统(替代ELKB)
  6. Tensorflow 循环神经网络 文本情感分析概述02
  7. python脚本打包成exe可执行文件
  8. Linux下的Nginx安装(开机自启动)
  9. 在有位图索引的表上进行DML操作与enq: TX - row lock contention等待事件问题分析
  10. 泰凌微8258入门教程 环境篇③——Telink BDT烧录下载
  11. Linux V4L2框架源码分析
  12. Python数据分析与挖掘实战第三章笔记之贡献度分析代码
  13. javascript中mouseover和mouseout事件详解
  14. 使用函数节流思想避免 SAP UI5 应用里按钮短时间内被高频重复点击试读版
  15. linux ssl证书卸载,linux下nginx怎么卸载ssl证书
  16. 【微信小程序】设置合法域名
  17. php 限定字符长度,php 字符串长度限制
  18. Python 获取文件夹下所有文件
  19. PY “不是内部或外部命令,也不是可运行的程序或批处理文件”
  20. 2008最新全套计算机毕业设计

热门文章

  1. java 正则 任意字符_Java正则表达式 去掉括号内任意字符
  2. NVIDIA Tesla/Quadro和GeForce GPU的比较
  3. Kotlin 学习笔记01
  4. Bokeh中图形与组件的布局简介 | Bokeh 小册子
  5. 接口性能测试实战小结
  6. sql语句:union
  7. 【STL】list基础(转)
  8. 瞎忙不如不忙——读高德拉特《目标》有感
  9. DRDB的安装配置与使用(第二版)
  10. 移动互联网漫谈(4)-移动通信网络