spring java 动态获取consul K/V

spring java 动态获取consul K/V

1.springConsul配置kv路径

spring:cloud:consul:enabled: ${CONSUL_ENABLED:true}host: ${CONSUL_HOST:localhost}port: ${CONSUL_PORT:8500}config:prefix: ${CONSUL_CONFIG_PREFIX:config} #consul kv前缀fail-fast: ${CONFIG_FAIL_FAST:false} #两个fail-fast结合实现启动服务时当consul不存在时服务能正常启动format: YAML    # 表示consul上面文件的格式 有四种 YAML PROPERTIES KEY-VALUE FILESdata-key: ${CONSUL_DATA_KEY:data}    #表示consul上面的KEY值(或者说文件的名字) 默认是data# watch选项为配置监视功能,主要监视配置的改变watch:enabled: truedelay: ${WATCH_DELAY:${consul.watch.delay:2000}}wait-time: ${WATCH_WAIT-TIME:20}default-context: ${CONSUL_DEFAULT_CONTEXT:baseconfig}prefixes:- configdiscovery:fail-fast: ${DISCOVERY_FAIL_FAST:false}catalogServicesWatchDelay: ${CONSUL_DISCOVERY_CATALOG_SERVICES_WAtCH_DELAY:2000} #目录监听延迟heartbeat:enabled: ${HEARTBEAT_ENABLE:true} #两个fail-fast结合实现启动服务时当consul不存在时服务能正常启动reregister-service-on-failure: ${HEARTBEAT_REREGISTER:true} #当ttl重试时,若服务不存在是否重新注册服务ttl: ${HEARTBEAT_TTL_VALUE:20}senabled: true # 启用服务发现prefer-ip-address: true # 表示注册时使用IP而不是hostnamehostname: localhosthealth-check-path: ${CONSUL_HEALTH_CHECK_PATH:${management.endpoints.web.base-path:/actuator}/health}  #consul默认健康检查地址,可以通过management进行修改health-check-critical-timeout: ${HEALTH_CHECK_CRITICAL_TIMEOUT:60s}  # 健康检查失败多长时间后,取消注册service-name: ${spring.application.name}instance-id: ${spring.application.name}-${spring.cloud.client.ip-address}-${server.port}  # 服务idtags:- ${TAGNAME_GRAYSCALE:graycaletag}=${GRAYSCALE_TAG:${spring.application.name}-${SERVER_SEQUENCE:1}}- ${TAGNAME_SERVICEEXT:serviceext}=${SERVICE_EXT:default}query-passing: true #仅发现健康状态的服务

重点:
spring.cloud.consul.config.prefix consulKV前缀,低版本仅能设置一个
spring.cloud.consul.config.data-key consulKV 最后一级
spring.cloud.consul.config.default-context consulKV中间层级
通过该配置,服务会从consul的KV路径config/baseconfig/data 下的data信息

2.自动注入consulKV到服务中

consul KV 配置为
在这里插入图片描述

当服务启动时,服务会从consul的KV对应路径下获取配信息到服务中,再服务中通过注解ConfigurationProperties来获取

@Getter
@Setter
@Component
@ConfigurationProperties("myconsul.kv.test")
public class MyConsulKvTest {private String name;private String id;
}

当修改consulKV后服务中 MyConsulKvTest 这个bean也会自动更新

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/109331.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【学习笔记】RabbitMQ04:延迟队列的原理以及实现代码

参考资料 RabbitMQ官方网站RabbitMQ官方文档噼咔噼咔-动力节点教程 文章目录 七、延迟队列7.1 什么是延迟队列7.2 延迟队列的解决方案7.2.1 定时任务7.2.2 **被动取消**7.2.3 JDK的延迟队列7.2.3 采用消息中间件(rabbitMQ7.2.3.1 适用专门优化后的死信队列实现延迟队…

软考高级系统架构设计师系列之:数学与经济管理

软考高级系统架构设计师系列之:数学与经济管理 一、数学与经济管理二、图论应用-最小生成树三、图论应用-最短路径四、图论应用-网络与最大流量五、运筹方法-线性规划六、运筹方法-动态规划七、运筹方法-转移矩阵八、运筹方法-排队论九、运筹方法-决策-不确定决策十、运筹方法…

Linux常见基本指令合集及其效果展示

Linux基本命令 文章目录 Linux基本命令1. whoami2. who3. clear4. pwd5. 查看文件信息5.0 什么是文件5.1 ls5.2 ls -l5.3 ls -a5.4 ls -a -l 6. 补充知识:对于Linux系统目录的认知6.1 什么是路径 7. cd8. touch9. mkdir10. rmdir11. rm12. man13. cp14. mv15. nano1…

魔行观察》一款免费的品牌/商业地产数据查询平台

给大家推荐一款免费的商业数据查询平台"魔行观察",可免费查询品牌,品牌门店,商场,全国小区,写字楼等相关信息,更多数据敬请期待 小程序搜索:魔行观察 即可使用

Android组件通信——广播机制:BroadcastReceiver(二十九)

1. BroadcastReceiver 1.1 知识点 (1)掌握广播接收器的主要作用及基本实现; (2)可以使用广播启动Service; (3)理解闹钟服务的使用; 1.2 具体内容 广播这个名词大家…

信创办公–基于WPS的Word最佳实践系列 (图文环绕方式)

信创办公–基于WPS的Word最佳实践系列 (图文环绕方式) 目录 应用背景操作步骤1、 打开布局选项中图文环绕方式的方法2、 图文环绕三大类型 应用背景 在Word中,对文字和图片进行排版时,采用各种不同的图片与文字组合效果能够使页面…

Android 自定义view 圆形进度条

Android 自定义view 圆形进度条 前言一、码前分析二、开码1.画笔2.弧度3.圆弧的位置4.暴露给外部设置进度条的方法三、使用四、完整代码 总结 前言 先来看看效果,大概要实现这么一个圆形的进度条 一、码前分析 要实现这么一个进度条的效果,实际上是要画…

cbu和无cc的shiro反序列化

前置知识 学习CommonsBeanutils之前应该知道 javaBean,可以看《Java简单特性》也可以看这里有关BeanComparator的介绍TemplatesImpl gadget,前两个方法是public TemplatesImpl#getOutputProperties() -> TemplatesImpl#newTransformer() -> Tem…

【前端学习】—ES6新增的方法有哪些(十五)

【前端学习】—ES6新增的方法有哪些(十五) 一 、ES6中新增的方法 (一)、Object.is() //用于判断两个值/数据类型是否相等/* 特点:不仅可以对值类型进行正常处理,对象类型的值也可以处理对于特殊的值NaN 也…

第七版教材下的PMP考试有多难?

考过了几次就没多难了,主要是看考纲,其中的难点就是敏捷的内容多了不少,包含在考纲的三大模块中,pmp考试没有专门的敏捷教材,需要自己去找资料备考。 第七版教材主要内容: 考纲三大模块分析: …

10-k8s-身份认证与鉴权

文章目录 一、ServiceAccount介绍二、ServiceAccount相关的资源对象三、dashboard空间示例 一、ServiceAccount介绍 ServiceAccount(服务账户)概念介绍 1)ServiceAccount是Kubernetes集群中的一种资源对象,用于为Pod或其他资源提供…

【C++】多态 -- 详解

⚪前言 声明一下,下面的代码和解释都是在 VS2019 下的 X86 程序中进行的,涉及的指针都是 4 bytes。如果要其他平台下,部分代码需要改动。比如:如果是 X64 程序,则需要考虑指针是 8 bytes 问题等等。其它编译环境下&…

2023年中国有创呼吸机产量、需求量及行业市场规模分析[图]

有创呼吸机主要是通过气管插管或者气管切开,然后通过管道连接在呼吸机上,为患者提供呼吸支持,主要针对的患者是昏迷的,无自主呼吸或不能耐受无创呼吸机的患者。 有创呼吸机是高端医疗装备,设计、生产和临床验证都必须经…

机器学习笔记 - 3D 对象跟踪极简概述

一、简述 大多数对象跟踪应用程序都是 2D 的。但现实世界是 3D 的,无论您是跟踪汽车、人、直升机、导弹,还是进行增强现实,您都需要使用 3D。在 CVPR 2022(计算机视觉和模式识别)会议上,已经出现了大量3D目标检测论文。 二、什么是 3D 对象跟踪? 对象跟踪是指随着时间的…

【JVM面试】从JDK7 到 JDK8, JVM为啥用元空间替换永久代?

系列文章目录 【JVM系列】第一章 运行时数据区 【面试】第二章 从JDK7 到 JDK8, JVM为啥用元空间替换永久代? 大家好,我是青花。拥有多项发明专利(都是关于商品、广告等推荐产品)。对广告、Web全栈以及Java生态微服务拥有自己独到…

MySQL [基础] 学习笔记

MySQL 学习 文章目录 MySQL 学习1. 数据库三层结构2. 数据在数据库中的存储方式3. SQL 语句分类3.1 备份恢复数据库的表 4. Mysql 常用数据类型(列类型)4.1 数值型(整数)的基本使用4.2 数值型(bit)的使用4.3 数值型(小数)的基本使用4.4 字符串的基本使用(面试题)4.5 字符串使用…

2020年下半年~2022下半年下午题易错总结

2020年下半年 试题一: 1.组播报文对无线网络空口的影响主要有(14) ,随着业务数据转发的方式不同, 组播报文的抑制分别在 (15)、(16) 配置。 答案: (14)无线空口拥塞 (15)直连AP的交换…

软件测试需要学习什么?好学吗?需要学多久?到底是报班好还是自学好?

前言: 上篇文章看到很多小伙伴在讨论做测试到底怎么样, 其中很有很多的小伙伴还踩不少的坑,花费了大量的精力和时间去探索,结果还是一无所获。这里给大家出一期关于软件测试萌新的疑惑,看完这篇文章你就知道软件测试…

AR智能眼镜主板设计方案_AR眼镜PCB板设计

AR智能眼镜是一种采用先进技术的创新产品,具备强大的功能和性能。它采用了MTK8788八核 12nm低功耗硬件平台,搭载IMG GE830063OMhz或以上的GPU,并运行Android 11.0或以上的操作系统。该眼镜支持光波导1080P显示和LVDS接口自由曲面显示&#xf…

信钰证券:新增融券交易明显降温 业内称新规将平衡多类型投资者利益

10月14日,中国证监会发布调整优化融券相关准则的通知,沪深北买卖所齐发具体安排,阶段性收紧融券和战略出资者配售股份出借。其间,融券保证金比例进步自10月30日起实施,战略出资者配售股份出借收紧等其他条款自10月16日…