SpringCloud之 Config配置中心


提示:以下是本篇文章正文内容,Redis系列学习将会持续更新

在这里插入图片描述

Config 配置中心

官方文档: https://docs.spring.io/spring-cloud-config/docs/current/reference/html/

经过前面的学习,我们对于一个分布式应用的技术选型和搭建已经了解得比较多了,但是各位有没有发现一个问题,如果我们的微服务项目需要部署很多个实例,那么配置文件我们岂不是得一个一个去改,可能十几个实例还好,要是有几十个上百个呢?那我们一个一个去配置,岂不直接猝死在工位上。

所以,我们需要一种更加高级的集中化地配置文件管理工具,集中地对配置文件进行配置。

Spring Cloud Config 为分布式系统中的外部配置提供服务器端客户端支持。使用 Config Server,您可以集中管理所有环境中应用程序的外部配置。

在这里插入图片描述
实际上 Spring Cloud Config 就是一个配置中心,所有的服务都可以从配置中心取出配置,而配置中心又可以从 GitHub 远程仓库中获取云端的配置文件,这样我们只需要修改 GitHub 中的配置即可对所有的服务进行配置管理了。

回到目录…

一、部署配置中心

🍭1.1 创建 config 服务端

①这里我们接着创建一个新的项目 config-server,并导入依赖:

<dependencies>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-config-server</artifactId>
    </dependency>
  	<dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
    </dependency>
</dependencies>

②写启动类,用 @EnableConfigServer 注解修饰

@SpringBootApplication
@EnableConfigServer
public class ConfigApplication {
    public static void main(String[] args) {
        SpringApplication.run(ConfigApplication.class, args);
    }
}

③创建配置文件,并且添加本地仓库的一些信息,详细使用教程:https://docs.spring.io/spring-cloud-config/docs/current/reference/html/#_git_backend

server:
  port: 8700
spring:
  application:
    name: configserver
  cloud:
    config:
      server:
        git:
          # 这里填写的是本地仓库地址,远程仓库直接填写远程仓库地址 http://git...
          uri: file://F:/Git/SpringCloudStudy-Config
          # 默认分支设定为你自己本地或是远程分支的名称
          default-label: master
eureka:
  client:
    service-url:
      defaultZone: http://localhost:8801/eureka, http://localhost:8802/eureka

④在 Git 仓库创建并提交 .yml 配置文件:

这里我们以本地仓库为例(就不用 GitHub了,卡到怀疑人生了),首先在项目目录下创建一个本地 Git 仓库,打开终端,在桌面上创建一个新的本地仓库:
在这里插入图片描述
在这里插入图片描述
我们创建的一些配置文件,注意名称最好是{服务名称}-{环境}.yml
  bookservice.yml:存放公共配置
  bookservice-dev.yml:本地开发环境
  bookservice-test.yml:测试环境
  bookservice-prod.yml:生产环境

将配置文件提交到 Git 仓库:
在这里插入图片描述

回到目录…

🍭1.2 启动配置服务器

我们可以先在 Eureka 注册中心看看是否成功启动:
在这里插入图片描述

访问配置文件:

  • http://localhost:8700/{服务名称}/{环境}/{Git分支}
  • http://localhost:8700/{Git分支}/{服务名称}-{环境}.yml

比如要访问图书服务的配置文件,可以使用 http://localhost:8700/master/bookservice-dev.yml 链接,它会显示配置文件原文
在这里插入图片描述

也可以使用 http://localhost:8700/bookservice/dev/master 链接,它仅显示详细信息
在这里插入图片描述

当然,除了使用 Git 来保存之外,还支持一些其他的方式,详细情况请查阅官网。

回到目录…

二、客户端的配置

①我们的服务需要从服务器读取配置文件,首先需要添加依赖:

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-config</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-bootstrap</artifactId>
</dependency>

②然后我们需要使用bootstrap.yml(它可以在 application.yml 之前加载,实现配置文件远程获取)

spring:
  cloud:
    config:
      # 名称,其实就是文件名称
      name: bookservice
      # 配置服务器的地址
      uri: http://localhost:8700
      # 环境
      profile: dev
      # 分支
      label: master

配置完成之后,启动图书服务:
在这里插入图片描述
可以看到已经从远端获取到了配置,并成功访问。
在这里插入图片描述

回到目录…


总结:
提示:这里对文章进行总结:
本文是对SpringCloud的学习,学习了部署配置中心的方法、服务端的配置、存放配置文件的仓库选择,以及客户端如何配置。之后的学习内容将持续更新!!!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

一只咸鱼。。

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

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

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

打赏作者

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

抵扣说明:

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

余额充值