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.rhkb.cn/news/160757.html

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

相关文章

ORA-12541:TNS:no listener 无监听程序

问题截图 解决方法 1、删除Listener 新建一个新的 2、主机为服务器ip 3、设置数据库环境 只需要设置实例名不需要设置路径 4、服务命名 一样设置为ip 服务名与监听名一直 eg:orcl

Sketch macOS 支持m1 m2 Sketch 2023最新中文版

SketchUp Pro 2023是一款功能强大的三维建模软件,适用于建筑设计师、室内设计师、工程师和其他创意专业人士。以下是SketchUp Pro 2023的一些主要特点和功能: 三维建模:SketchUp Pro 2023允许用户以直观的方式创建三维模型。通过简单的绘图工…

aidl的注意事项

该篇继承自上一篇,上一篇也有一部分的注意事项,这一篇把其他的情况列出 一 客户段和服务端的aidl文件下的package名字要是一样的 二 server中的 manifest中的package名字,这个与上面两个包不能相同,不然在客户端设置intent的pa…

Java每日笔试题错题分析(6)

Java每日笔试题错题分析(6) 一、错题知识点前瞻第1题第2题第3题第4题 二、错题展示及其解析第1题第2题第3题第4题 一、错题知识点前瞻 第1题 被动引用(免初始化) 提示: 第2题 本题考查的含义,对于两个引用…

在全志R128上启用USB ADB以及无线ADB配置方法

首先在FreeRTOS的环境下,选择r128_c906_pro: source envsetup.sh lunch_rtos r128s2_pro_c906USB ADB的配置比较常规,注意以下几个驱动的勾选 usb device驱动adb gadget驱动adbd应用 运行menuconfig,选择对应的驱动以及软件包&…

基于YOLO算法的单目相机2D测量(工件尺寸和物体尺寸)三

1.简介 1.1 2D测量技术 基于单目相机的2D测量技术在许多领域中具有重要的背景和意义。 工业制造:在工业制造过程中,精确测量是确保产品质量和一致性的关键。基于单目相机的2D测量技术可以用于检测和测量零件尺寸、位置、形状等参数,进而实…

天锐绿盾透明加密、半透明加密、智能加密这三种不同加密模式的区别和适用场景——@德人合科技-公司内部核心文件数据、资料防止外泄系统

由于企事业单位海量的内部数据存储情况复杂,且不同公司、不同部门对于文件加密的需求各不相同,单一的加密系统无法满足多样化的加密需求。天锐绿盾企业加密系统提供多种不同的加密模式,包括透明加密、半透明加密和智能加密,用户可…

【网络安全 --- win10系统安装】win10 系统详细安装过程(提供资源)

一,资源下载 百度网盘镜像下载地址链接: 百度网盘 请输入提取码百度网盘为您提供文件的网络备份、同步和分享服务。空间大、速度快、安全稳固,支持教育网加速,支持手机端。注册使用百度网盘即可享受免费存储空间https://pan.ba…

leetcode-48.旋转图像

1. 题目 leetcode题目链接 给定一个 n n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。 你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。 2. 编程 矩阵转置: 遍历矩阵&#x…

计算机网络第2章-DNS(3)

DNS:因特网的目录服务 在因特网上,主机和人类都一样,可以用很多种方式进行标识,主机的一种标识方法是它的主机名。 但是主机名一般是用IP来表示,IP是由四个字节组成,并且有严格的层次结构,不利…

1347. 制造字母异位词的最小步骤数 (中等,Counter)

闲来无事,今天多做一题 条件很宽,可以任意替换,且排列相同也可以所以只要统计每个字母在 s 中比在 t 中多出现的次数之和即可 class Solution:def minSteps(self, s: str, t: str) -> int:n [0] * 26for i in s:n[ord(i) - ord(a)] 1f…

2023亿发智能数字化解决方案供应商,贵州一体化企业信息管理系统

企业数字化服务的解决方案是指运用数字技术对企业运营进行全方位的数字化升级和优化,提供以数字化服务为核 心的全面解决方案,解决企业在数字化转型过程中面临的技术和业务难题。 数字化服务解决方案的功能 在数字化时代的背景下,贵州企业的…

内网和热点同时连接使用配置

解决如标题问题 查看当前永久路由信息 route print截图保存(重要) 截图保存(重要)查出来的永久路由,以防配置不成功时回退,回退方法就是下面的“添加永久路由” 删除当前的路由 0.0.0.0 是上面查出的网络地址 route delete 0.0.0.0内网IP信息 添加永久…

Pytorch:cat、stack、squeeze、unsqueeze的用法

Pytorch:cat、stack、squeeze、unsqueeze的用法 torch.cat 在指定原有维度上链接传入的张量,所有传入的张量都必须是相同形状 torch.cat(tensors, dim0, *, outNone) → Tensor tensor:相同形状的tensor dim:链接张量的维度,不能超过传入张…

讲解嵌入式软件中超时机制设计

软件超时机制 1、背景 在嵌入式软件程序设计过程中中,经常会遇到超时(或定时)的处理情况,基本处理思想是在时间到的时候进行相关程序处理,下面介绍两种超时(或定时)的程序设计方案。 2、方案…

Python面向对象编程

Python面向对象 1. 面向对象2. 创建简单类3. 属性4. 魔法方法5. 继承 1. 面向对象 面向对象编程 OOP:(Object-Oriented Programming)是一种将数据和相关操作封装在一起的编程方式 类:对一系列具有相同特征和行为的食物的统称&…

Python —— hou.Node class

Houdini内所有节点(Object、SOP、COP等)的基类,该类的实例对应houdini内的节点; 每个节点都有一个唯一的路径(定义其在节点树内的位置);节点路径层次结构类似于文件系统中的文件和文件夹的层次结…

【Linux】Linux常用指令

ls指令(对属性操作,查看文件相关属性) 用法:ls[选项][目录或文件] 功能:1. 对于目录,该命令列出该目录下的所有子目录和文件。2. 对于文件,将列出文件名以及其他信息。 常用选项: …

WPF 用户控件依赖注入赋值

前言 我一直想组件化得去开发WPF&#xff0c;因为我觉得将复杂问题简单化是最好的 如何组件化开发 主窗口引用 <Window x:Class"WpfApp1.MainWindow"xmlns"http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x"http://schemas.…

爱胜品YPS-1133DN系列打印机与奔图P3301DN打印机耗材更换的简单对比说明

速印机&#xff08;理想、荣大等&#xff09;、复印机&#xff08;夏普、理光、佳能、震旦等全系列&#xff09;、打印机、扫描仪、传真机、多媒体教学一体机、交互式电子白板、报警器材、监控、监考设备、特种安防设备维护及维修。吴中函 某用户的爱胜品YPS-1133DN Pro、爱胜品…