Consul配置中心支持

Consul不仅能用来服务注册和发现,还支持Key/Value键值对的存储,可以用来做配置中心,并且支持动态刷新,这样我们可以将工程中的配置信息保存在Cosul中。

在父工程:pom文件中添加坐标

<!--consul配置中心组件-->
<dependency>
	<groupId>org.springframework.cloud</groupId>
	<artifactId>spring-cloud-starter-consul-config</artifactId>
</dependency>

1:在子工程中新建配置文件:bootstrap.yml (bootstrap.yml 优先 application.yml加载),并添加配置如下

spring:
  application:
    name: schedule-service
  profiles:
    active: dev
  cloud:
    consul:
      host: 127.0.0.1
      port: 8500
      discovery:
        serviceName: ${spring.application.name}
      config:
        enabled: true              #enabled 设置config是否启用,默认为true            
        format: yaml               #format 设置配置的值的格式,可以yaml和properties             
        prefix: config             # prefix 设置配的基本目录,比如config              
        defaultContext: schedule   # defaultContext 设置默认的配置,被所有的应用读取  
        data-key: data
                                    # profiles是支持springboot多环境

2:将原本的配置文件application.yml改名叫:application-dev.yml,并将该文件中的配置注释复制保存到Consul中

application-dev.yml中原有的关于Consul地址和端口的信息配置以及应用名称的配置无需添加到Consul的
key/value中保存,因为在bootstrap.yml中已经配置了

Consul中保存的值(即工程中的配置)

注意事项
consul支持的K/V存储的Value值不能超过512KB
Consul的dev模式,所有数据都存储在内存中,重启Consul的时候会导致所有数据丢失,在正式的环境中,Consul的数据会持久化,数据不会丢失,使用如下命令启动Consul即可

consul agent -server -ui -bootstrap-expect 1 -data-dir D:\consul\data -node=n1 -
bind=127.0.0.1

登录配置中心转移配置

访问consul控制台
http://localhost:8500

2.1:key值由四部分拼接组成:

在这里插入图片描述
拼接结果如下:config/schedule,dev/data(注意间隔符号)
在这里插入图片描述
consul配置中心支持热加载演示:
编写方法读取配置文件中refreshTime的值,每秒在控制台打印一次
在打印过程中,进入配置中心将值由1改为2,查看打印情况
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Consul 是一个开源的服务发现和配置中心工具,由 HashiCorp 公司开发。它可以帮助应用程序在分布式系统中进行服务发现、故障检测和配置管理。 作为一个配置中心Consul 提供了以下功能: 1. 键值存储:Consul 提供一个分布式的键值存储,可以用来存储应用程序的配置信息。应用程序可以通过 API 或命令行工具来读取和写入配置数据。 2. 服务发现:Consul 可以监测注册在其上的服务的可用性,并提供服务发现功能。应用程序可以通过 Consul 发现和连接到其他服务,从而实现服务之间的通信。 3. 健康检查:Consul 可以定期检查服务的健康状态,并提供报警和自动修复功能。当服务出现故障时,Consul 可以自动将流量路由到健康的实例上。 4. 多数据中心支持Consul 支持多个数据中心之间的服务发现和配置同步,可以构建全球分布式系统。 使用 Consul 配置中心可以带来许多好处,包括: 1. 集中管理配置:通过将配置信息存储在 Consul 的键值存储中,可以实现集中管理和动态更新配置,减少了手动修改配置文件的工作量。 2. 动态配置更新:Consul 提供了实时变更配置的能力,应用程序可以通过监听配置变更事件来动态更新配置,而不需要重启或重新加载应用程序。 3. 服务发现与负载均衡:Consul 提供了服务发现功能,可以帮助应用程序自动发现和连接其他服务。结合负载均衡,可以实现对服务的高可用和性能优化。 4. 故障检测和自愈能力:Consul 可以定期检查服务的健康状态,并提供故障检测和自愈能力。当服务出现故障时,可以自动切换到健康的实例,提高系统的可用性。 总之,Consul 是一个功能强大的配置中心工具,可以帮助构建可靠的分布式系统,并简化配置管理和服务发现的工作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值