SpringCloud之Config的基础使用

Config概述

​ 在分布式环境里面,很多服务都要做集群部署,那意味着这些服务都要提供一样的服务,所以它们的配置文件必须相同;所以提取一个配置文件中心,让它能够从一个中心处拉取配置文件,这样就能保证所有的配置都相同;在修改时,也只需要修改一个地方就可以了。

​ SpringCloud **Config为微服务架构中的微服务提供集中化的外部配置的支持;**配置服务器为各个不同的微服务应用所有环境提供了一个中心化的外部配置;Config分为服务端和客户端两部分。

Config服务端:
也称为配置中心,它是一个独立的微服务应用,用来连接配置服务器并为客户端提供获取配置住处、加密、解密住处等访问接口。

Config客户端:
则是通过指定的配置中心来管理应用资源,以及与业务相关的配置内容,并在启动的时候从配置中心获取加载配置信息。

配置服务器:
默认使用git来存储配置住处,这样有助于对环境配置进行版本管理,并可以通过git客户端工具来方便的管理和访问配置内容。

服务端创建:

第一步:pom文件

        <!--config服务端的依赖-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-config-server</artifactId>
        </dependency>

第二步:启动类添加注解**@EnableConfigServer**

package com.mmy;

//标记为config服务端
@EnableConfigServer
@SpringBootApplication
public class ConfigServerApplication {

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

第三步:配置文件

#配置文件中心的服务名称
spring.application.name=config-server
#配置文件中心的端口 -- 一般都是8888 8889
server.port=8888

#--------------------和git的关联配置-----------------------------------------------

#gitee上的配置文件远程仓库的url地址
spring.cloud.config.server.git.uri=***
#gitee上的配置文件远程仓库中存放配置文件的目录路径
spring.cloud.config.server.git.search-paths=***
#登录gitee的用户名
spring.cloud.config.server.git.username=***
#登录gitee的密码
spring.cloud.config.server.git.password=***
#将gitee上的配置文件远程仓库中的配置文件缓存到本地的位置
spring.cloud.config.server.git.basedir=***

客户端搭建:

第一步:pom文件

		<!--config客户端的依赖-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-config</artifactId>
        </dependency>

第二步:配置文件

#config客户端的服务名称
spring.application.name=config-client
#config客户端的端口
server.port=8080

#---config客户端从配置中心(config服务端)拉取配置文件的配置---

#配置中心(config服务端)的url地址
spring.cloud.config.uri=http://localhost:8888

#配置文件的读取规则是:
#/{label}/{name}-{profile}.properties 或 /{label}/{name}-{profile}.yml
#label是配置文件位于的分支名称,例如master主分支
#name是配置文件名称的前缀,例如config-dev.properties
#profile是配置文件名称的环境,例如config-dev.properties
spring.cloud.config.label=master
spring.cloud.config.name=config
spring.cloud.config.profile=dev

解决读取脏读:

​ 当git中的配置文件修改后,但是客户端读取的数据依旧是修改前的数据,存在脏读;

解决方法:借助Bus消息总线来解决

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值