SpringCloud config分布式配置(二)服务端和客户端的搭建

上一篇文章中,我们主要介绍了以下Git环境的搭建,其中我们说到Spring Cloud Config是一个C\S的架构,所以我们还需要在我们的分布式架构中搭建一下Spring Cloud Config的服务器端和客户端。

有不清楚环境搭建的同学可以看一下上一篇文章:SpringCloud config分布式配置(一) Git环境搭建

SpringCloud Config服务端搭建

1)新建项目,引入必要依赖

	  <!-- spring boot web启动器 -->
      <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-web</artifactId>
      </dependency>
      <!-- 热部署依赖 -->
      <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-devtools</artifactId>
      </dependency>
      <!-- 监控信息 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
      <!--  Config server 依赖 -->
      <dependency>
          <groupId>org.springframework.cloud</groupId>
          <artifactId>spring-cloud-config-server</artifactId>
          <version>2.1.6.RELEASE</version>
      </dependency>

2)编写配置文件

server:
  port: 3344

spring:
  application:
    name: config-server
  cloud:
    #连接远程仓库
    config:
      server:
        git:
          #远程https请求地址
          uri: https://gitee.com/fyy123/springcloud-config-10000.git
          order: 1
#        svn:
#          uri:  #svn地址
#          order: 2
#          username: #svn用户名
#          password: #svn密码

3)配置主启动类

@SpringBootApplication
@EnableConfigServer //开启config 服务
public class Config_Server_3344 {
    public static void main(String[] args) {
        SpringApplication.run(Config_Server_3344.class,args);
    }
}

4)启动测试
HTTP服务具有以下格式的资源:

<!-- application配置文件名,profile环境激活, label是可选的git标签(默认为“master”)-->
/{application}/{profile}[/{label}]
/{application}-{profile}.yml
/{label}/{application}-{profile}.yml
/{application}-{profile}.properties
/{label}/{application}-{profile}.properties

git远程
在这里插入图片描述
启动服务访问:
http://localhost:3344/application/test/master

{"name":"application",
"profiles":["test"],
"label":"master",
"version":"d01455a2208fbbd0654f0a5d1b84ff3b1edd387a",
"state":null,
"propertySources":[
	{"name":"https://gitee.com/fyy123/springcloud-config-10000.git/application.yml (document #2)",
	"source":{
		"spring.profiles":"test",
		"spring.application.name":"springcloud-config"}
	},
	{"name":"https://gitee.com/fyy123/springcloud-config-10000.git/application.yml (document #0)",
	"source":{
		"spring.profiles.active":"dev"}
	}]
}

http://localhost:3344/application-test.yml

spring:
  application:
    name: springcloud-config
  profiles:
    active: dev

可以看出访问的连接不一样,返回的信息页不一样,但是需要的配置都拿到了。

SpringCloud Config客户端搭建

为了更直观的了解客户端的使用,我们在配置中心的项目中新建一个客户端的配置文件,上传到Git远程仓库
配置文件内容

spring:
  profiles:
    active: dev

---
server:
  port: 8081
spring:
  profiles: dev
  application:
    name: springcloud-config-dev

eureka:
  client:
    service-url:
      defaultZone: http://localhost:7003/eureka/

---
server:
  port: 8082
spring:
  profiles: test
  application:
    name: springcloud-config-test

eureka:
  client:
    service-url:
      defaultZone: http://localhost:7003/eureka/

文件提交命令:

git add .   //提交当前目录所有文件
git status  //查看提交文件状态
git commit -m ""  //提交到本地缓存
git push origin master //push到远程仓库

在这里插入图片描述
准备工作完成,下面开始搭建客户端

  1. 新建客户端项目,添加依赖
<!-- spring boot web启动器 -->
 <dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-web</artifactId>
 </dependency>
 <!-- 热部署依赖 -->
 <dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-devtools</artifactId>
 </dependency>
 <!-- 监控信息 -->
 <dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-actuator</artifactId>
 </dependency>
 <!--  Config依赖 -->
 <dependency>
     <groupId>org.springframework.cloud</groupId>
     <artifactId>spring-cloud-starter-config</artifactId>
     <version>2.1.6.RELEASE</version>
 </dependency>
  1. 编写配置文件
编写bootstarap.yml
##系统级别的配置,根配置
spring:
  cloud:
    config:
      #http://localhost:3344/label/config-client-dev.yml
      name: config-client  #需要读取的资源名称,不需要后缀
      profile: dev  #环境
      label: master #git分支
      uri: http://localhost:3344
编写application.yml
##用户级别的配置
spring:
  application:
    name: config-client-3355
  1. 编写启动类
@SpringBootApplication
public class ConfigClient_3355 {

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

}
  1. 编写测试方法
    获取配置的服务启动端口
@RestController
public class ConfigController {

    @Value("${server.port}")
    private String port;

    @GetMapping("/config")
    public String getConfig(){
        return "服务在端口:" + port + "启动!";
    }

}

启动服务端及客户端,访问http://localhost:8081/config
在这里插入图片描述
修改配置为test,访问http://localhost:8082/config
在这里插入图片描述
至此SpringCloud Config的C\S环境搭建完成

源码地址:下载地址

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序小达人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值