Spring Boot 配置 - Consul 配置中心

▶ Spring Boot 依赖与配置
Maven 依赖
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Greenwich.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
.....
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-consul-config</artifactId>
</dependency>
</dependencies>
▶ 使用说明
1、部署 Consul
- 参考文档:上一篇
2、在 resources 路径下添加配置文件 bootstrap.properties,示例如下:
# consul 基本配置
spring.cloud.consul.host=127.0.0.1
spring.cloud.consul.port=8500
# 启用 consul 配置中心
spring.cloud.consul.config.enabled=true
# 基础文件夹,默认值 config
spring.cloud.consul.config.prefix=config
# 应用文件夹,默认值 application,consul 会加载 config/<applicationName> 和 config/<defaultContext> 两份配置,设置为相同值,则只加载一份
spring.cloud.consul.config.default-context=testApp
spring.application.name=testApp
# 环境分隔符,默认值 ","
spring.cloud.consul.config.profile-separator=-
# 配置转码方式,默认 key-value,其他可选:yaml/files/properties
spring.cloud.consul.config.format=properties
# 配置 key 值,value 对应整个配置文件
spring.cloud.consul.config.data-key=data
# 启用配置自动刷新
spring.cloud.consul.config.watch.enabled=true
# 【疑问】请求 consul api 的延迟,单位:秒
spring.cloud.consul.config.watch.wait-time=1
# 刷新频率,单位:毫秒
spring.cloud.consul.config.watch.delay=10000
3、在 Consul Key/Value 中添加应用配置
配置项 spring.cloud.consul.config.prefix 指定了基本文件夹为 config,需要先创建文件夹 config:

新建分两种类型:文件夹、Key/Value,创建文件夹只需在后面加上 "/" 即可
配置项 spring.cloud.consul.config.default-context 和 spring.cloud.consul.config.profile-separator 指定了应用名和环境分隔符,例如应用 testApp 有环境 default、dev、prod,只需在 config 目录下创建 testApp、testApp-dev、testApp-prod 三个文件夹即可:

配置项 spring.cloud.consul.config.format 指定了 Value 的转化方式,依据个人喜好,可以配置为 yaml 或 properties,若选择这两种方式,需要配置 spring.cloud.consul.config.data-key,默认为 data,示例配置:

Tips:如需单独配置每个 Key/Value,spring.cloud.consul.config.format 和 spring.cloud.consul.config.data-key 均不用设置
4、配置刷新
spring.cloud.consul.config.watch.delay 设置了配置的刷新间隔,在 Consul 修改了配置,会动态同步到应用内部。
▶ Github Demo URL
▶ 相关文档
- Spring Cloud Consul Config

天天玩微信,Spring Boot 开发私有即时通信系统了解一下
● Spring Boot 定制 parent 快速构建应用
● Spring Boot 日志处理你还在用Logback?
● 【双11狂欢的背后】微服务注册中心如何承载大型系统的千万级访问?

本文由博客一文多发平台 OpenWrite 发布!
Spring Boot 配置 - Consul 配置中心的更多相关文章
- spring boot web相关配置
spring boot集成了servlet容器,当我们在pom文件中增加spring-boot-starter-web的maven依赖时,不做任何web相关的配置便能提供web服务,这还得归于spri ...
- 初识Spring Boot框架(二)之DIY一个Spring Boot的自动配置
在上篇博客初识Spring Boot框架中我们初步见识了SpringBoot的方便之处,很多小伙伴可能也会好奇这个Spring Boot是怎么实现自动配置的,那么今天我就带小伙伴我们自己来实现一个简单 ...
- Spring Boot 2.0 配置图文教程
摘要: 原创出处 https://www.bysocket.com 「公众号:泥瓦匠BYSocket 」欢迎关注和转载,保留摘要,谢谢! 本章内容 自定义属性快速入门 外化配置 自动配置 自定义创建 ...
- Spring boot 的自动配置
Xml 配置文件 日志 Spring Boot对各种日志框架都做了支持,我们可以通过配置来修改默认的日志的配置: #设置日志级别 logging.level.org.springframework=D ...
- spring boot多数据源配置(mysql,redis,mongodb)实战
使用Spring Boot Starter提升效率 虽然不同的starter实现起来各有差异,但是他们基本上都会使用到两个相同的内容:ConfigurationProperties和AutoConfi ...
- Spring Boot SSL [https]配置例子
前言 本文主要介绍Spring Boot HTTPS相关配置,基于自签证书实现: 通过本例子,同样可以了解创建SSL数字证书的过程: 本文概述 Spring boot HTTPS 配置 server. ...
- spring boot 系列之六:深入理解spring boot的自动配置
我们知道,spring boot自动配置功能可以根据不同情况来决定spring配置应该用哪个,不应该用哪个,举个例子: Spring的JdbcTemplate是不是在Classpath里面?如果是,并 ...
- 转-spring boot web相关配置
spring boot web相关配置 80436 spring boot集成了servlet容器,当我们在pom文件中增加spring-boot-starter-web的maven依赖时,不做任何w ...
- spring boot日志管理配置
spring Boot在所有内部日志中使用Commons Logging,但是默认配置也提供了对常用日志的支持,如:Java Util Logging,Log4J,Log4J2和Logback.每种L ...
随机推荐
- 采坑指南——k8s域名解析coredns问题排查过程
正文 前几天,在ucloud上搭建的k8s集群(搭建教程后续会发出).今天发现域名解析不了. 组件版本:k8s 1.15.0,coredns:1.3.1 过程是这样的: 首先用以下yaml文件创建了一 ...
- B-概率论-贝叶斯决策
目录 贝叶斯决策 一.贝叶斯决策理论 二.贝叶斯公式 2.1 从条件概率公式推导贝叶斯公式 2.2 从全概率公式推导贝叶斯公式 三.贝叶斯公式应用 更新.更全的<机器学习>的更新网站,更有 ...
- 【DP合集】m-knapsack
给出 n 个物品,第 i 个物品有重量 w i .现在有 m 个背包,第 i 个背包的限重为 c i ,求最少用几个背 包能装下所有的物品. Input 输入的第一行两个整数 n, m ( n ≤ 2 ...
- 0基础学Java快速扫盲指南,月入2W的基础
学Java,掌握一些基本的概念是第一步,本文简单为大家介绍一些扫盲级别的内容,希望帮助小白快速入门. 一.基本概念 JVM:java虚拟机,负责将编译产生的字节码转换为特定机器代码,实现一次编译多处执 ...
- eventfd(2) 结合 select(2) 源码分析
eventfd(2) 结合 select(2) 源码分析 本文代码选自内核 4.17 eventfd(2) - 创建一个文件描述符用于事件通知. 使用 源码分析 参考 #include <sys ...
- python selenium下拉框定位
一.前言 总结一下python+selenium select下拉选择框定位处理的两种方式,以备后续使用时查询: 二.直接定位(XPath) 使用Firebug找到需要定位到的元素,直接右键复制XPa ...
- Kibana 快速入门教程
欢迎关注笔者的公众号: 小哈学Java, 专注于推送 Java 领域优质干货文章!! 个人网站: https://www.exception.site/kibana/kibana-tutorial 什 ...
- pycharm2018.2汉化 解决设置打不开问题
首先检查下是不是装了中文汉化包resources_cn.jar 如果有的话,解决办法:1.更换一个汉化包或者将原来的resources_en.jar也放进lib目录下 2.将汉化包都删除,只留下原版的 ...
- [LUOGU1437] 敲砖块
题目描述 在一个凹槽中放置了 n 层砖块.最上面的一层有n 块砖,从上到下每层依次减少一块砖.每块砖 都有一个分值,敲掉这块砖就能得到相应的分值,如下图所示. 14 15 4 3 23 33 33 7 ...
- 还在重复写空指针检查代码?考虑使用 Optional 吧!
一.前言 如果要给 Java 所有异常弄个榜单,我会选择将 NullPointerException 放在榜首.这个异常潜伏在代码中,就像个遥控炸弹,不知道什么时候这个按钮会被突然按下(传入 null ...