Springcloud结合zookeeper配置中心

【Spring Cloud 2023】【ZooKeeper】配置中心 本文介绍开发Spring Cloud应用集成ZooKeeper实现配置中心。本文引入 Apache Curator 是为了辅助测试配置中心相关功能;配置项说明::全局配置节点名称,默认。:默认true,启用ZooKeeper配置功能。:默认true,查找配置会抛出异常,否则只会记录警告日志。:替代用于在ZooKeeper中查值。:附加到应用程序名称的配置文件的分隔符,默认英文逗号。:配置根节点名称,默认config。 阅读详情

Springcloud结合zk实现动态配置

SpringCloud结合git配置不足:需要一个应用作为服务端,并且没有自动监听配置的更改功能。于是我们就借助zk来帮我们完成这个通知。

  • 安装zk
    首先我们需要一个zk集群。下载地址 我们的项目需要配置ssh能够直接访问集群,测试就直接在本地进行。

  • 安装zkui
    因为配置文件统一在zk上管理。所以安装个zkui方便修改(安装方式如下)。登录端口默认 9090。http://localhost:9090

git clone https://github.com/DeemOpen/zkui.git
cd zkui/
# 根据自身集群修改config.cfg 下面zkServer,userSet(登录账户)
mvn clean install
cp config.cfg target
# 启动
java -jar target/zkui-2.0-SNAPSHOT-jar-with-dependencies.jar
  • pom 配置
<dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <!-- 提供zookeeper整合的包 -->
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-zookeeper-config</artifactId>
    </dependency>
    <!-- 提供自动监听的 -->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-actuator</artifactId>
    </dependency>
  • 定制属性配置
    SpringCloud官方文档 ,搜索 Distributed Configuration with Zookeeper,下面有写着bootstrap.yml/bootstrap.properties配置,因为springboot加载文件顺序,zookeeper相关配置需要放到这个文件,而不能放到application.properties中。建议配置参照官网教程(不然人家写的东西可能忽略某些细节)下面是我的bootstrap.properties
spring.application.name=didispace
#根据自身环境
spring.profiles.active=dev
#指定zookeeper的地址,多个用逗号拼接
spring.cloud.zookeeper.connect-string=localhost:2181
#指定springcloud 读取zookeeper路径的开始位置。选取你自己的目录
spring.cloud.zookeeper.config.root=/config
#开始zk的配置
spring.cloud.zookeeper.config.enabled=true
#是否监听配置
spring.cloud.zookeeper.config.watcher.enabled=true
#配置文件分隔符
spring.cloud.zookeeper.config.profile-separator=-

server.port=7001
  • 测试类
@SpringBootApplication
@RefreshScope
@RestController
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class,args);
    }

    @Value("${from}")
    private String from;

    @RequestMapping("/from")
    //动态修改配置文件的值。
    public String from() {
        return this.from;
    }
}

读取配置路径:
/{root}/{application-name}-{profile}
/{root}/{application-name}
根据我们这里的{root} 为 config,profile分隔符取你们自定义的,默认为‘,’。{profile}的话我这里是dev。

  • 写入配置到zk
    方式一:通过手动添加Node(目录)和属性。我这里根据之前properties配置创建也config目录。再创建didispace-dev,然后添加一个Property,key=from。value=test
    zkui
    方式二:点击Import导入文件。txt格式:/{root}/{application-name}-{profile}={key}={value}。所以对于我的配置txt:/config/didispace-dev=from=test

  • 测试
    配置完成后就剩下测试了。如果能正常启动,并且有 State change: CONNECTED的日志就是链接zk成功了。然后我们修改配置from的值为dev,打开REST Client或者Postman等测试工具发一个 localhost:7001/from 请求,如果请求返回dev那就完成。

java框架篇spring cloud之spring config server 1.前言 什么是spring cloud? Spring cloud为用户提供了一整套快速开发分布式应用的解决方案,包括配置管理,服务发现,断路开关,智能路由,微代理,控制总线,一次token,全局锁,leader选举,分布式session,集群状态等功能。spring boot作为spring cloud等基础应用,可以快速搭建一个微服务。 2.功能点 Distributed/versi... 阅读详情

相关推荐

从‘包饺子’到‘包络线’:一个生活化比喻讲透长期与短期成本决策

本文通过饺子馆经营的生活化比喻,深入浅出地解析了长期与短期成本决策的核心逻辑。从调整人力(可变成本)到扩建厨房(固定成本),揭示了包络线理论在商业决策中的实际应用,帮助企业主在规模经济与成本控制间找到平衡点。

weixin_32006655的博客 338

Spring Cloud 中使用zookeeper作为服务注册中心与配置中心

Spring Cloud 中使用zookeeper作为服务注册中心与配置中心

码农 3万+

产生式系统的完整示例——医疗诊断系统(附python代码)

发烧(Fever)、咳嗽(Cough)、皮疹(Rash)、喉咙痛(SoreThroat)、头痛(Headache)、流涕(RunnyNose)、呼吸困难(ShortnessOfBreath)、白细胞计数高(HighWBC)、接触流感患者(ContactFlu)、接触麻疹患者(ContactMeasles)。(2)若规则库中存在尚未使用过的规则,而且它的前提(前件)可与综合数据库中的已知事实匹配,则转第(3)步;(3)执行当前选中的规则,并对该规则做上标记,把该规则执行后得到的结论送入综合数据库中。

搏博的专栏 1701

spring-cloud-config,spring-cloud-zookeeper,spring-cloud-bus(kafka)配置中心服务自动更新配置总结

spring-cloud-config spring-cloud-zookeeper spring-cloud-bus(kafka)实现自动化更新服务项目总结 备注:整个过程基于IntelliJ IDEA,整个工程基于父项目版本如下: <parent> <groupId>org.springframework.boot</groupId> <a...

721

基于PLC的冲压件自动生产线电气系统设计【附数据】

考虑到生产线的高效运行和维护简便性,选择了三菱FX系列的可编程逻辑控制器(PLC)作为核心控制单元,该型号的PLC因其高可靠性和强大的功能集,在工业自动化领域有着广泛的应用。最后,在完成初步的软件开发后,进行了多轮次的模拟测试和现场调试,逐步修正了存在的问题,最终达到了预期的功能要求。例如,对于进料环节,选用了光电传感器以精确检测物料的位置;此外,为了适应不同尺寸的工件加工需求,还特别设计了一套可调节的夹具系统,不仅提高了生产线的灵活性,同时也降低了更换模具的成本。✅ 感恩科研路上每一位志同道合的伙伴!

lagougongzuoshi的博客 1291

2025浏览器指纹伪装终极指南:Playwright修改WebGL+时区+分辨率,小红书爬1000条零验证

2025年小红书的反爬已经进入“多维校验”时代,单纯修改某一个指纹维度已失效。本文方案的核心是“让所有特征都一致且合理”——WebGL+Canvas+时区+分辨率+UA+行为,形成一个完整的“真实用户画像”,让小红书的反爬系统无法区分是爬虫还是真人。这套方案不仅适用于小红书,也可迁移到知乎、抖音、跨境电商等其他高反爬平台,只需替换对应的指纹库和数据提取逻辑。记住:指纹伪装的本质不是“欺骗”,而是“模拟真实”,把每个细节都做到和人类一致,自然就能实现“零验证”爬取。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 3069

Zookeeper的使用小结

1.首先,先了解下zookeeper吧,这篇文章总结的很好:【分布式】Zookeeper应用场景 2.那么,接下来就是在项目中引入依赖包:Zookeeper依赖包 3.把Log4j也配置一下,方便调试: ### set log levels ### log4j.rootLogger=INFO,console #log4j.logger.com.neu.dao.IStudentDao=t...

BAStriver的博客 1113

基于STM32F334C8T6的四开关Buck-Boost双向DC-DC电源设计与实现(附源码、仿真与计算书)

本文详细介绍了基于STM32F334C8T6的四开关Buck-Boost双向DC-DC电源设计方案。该设计利用STM32的高分辨率定时器(HRTIM)实现精确PWM控制,支持Buck、Boost和Buck-Boost三种工作模式自动切换,具备双向能量流动能力。通过PSIM仿真和Mathcad计算书进行参数优化,实测效率达95.8%,适用于新能源系统和电池管理等场景。

www00的博客 525

【Dubbo】Dubbo使用小记

上文我们搭建好了服务器上的zookeeper服务,暴露在<公网ip>:2182下。接下来就可以使用zookeeper作为注册中心进行rpc调用了。 这里主要记录一下使用注解的方式配置。还有xml和Api的方式,这篇文章https://segmentfault.com/a/1190000019896723讲的很详细,可以作为参考。 和SofaRpc一样,服务提供者和服务消费者都需要保证接口的包名完全一致,如果接口返回对象,也需要实现java.io.Serializable,而且尽可能保证包名类.

Vaskka的博客 540

Android Audio音量——音频类型新增(九)

在实际开发中,经常会遇到需要新增一个音频类型(usage)的需求,这里我们简单介绍一下需要修改的代码。

小旭的专栏 1570

打通ZYNQ的任督二脉:AXI_FIFO数据交互全解析

FIFO(First In First Out,先进先出)是一种经典的数据缓冲结构,就像排队买票一样,先来的人先得到服务。时钟域交叉(CDC):连接不同时钟频率的模块数据缓冲:平衡生产者和消费者的速度差异流量控制:防止数据丢失或溢出input clk,// 输入AXI4-Stream接口(从PS到PL)// 输出AXI4-Stream接口(从PL到PS)// 状态指示信号// 定义状态机状态// 数据缓存// 8个深度的缓存// 流水线处理寄存器。

QQ_778132974的博客 305

Heron集群常用命令

Zookeeper集群 查看zookeeper集群运行状态: yitian@heron01:~$ ./zookeeper/zookeeper-3.4.10/bin/zkServer.sh status 查看2181端口占用情况: yitian@heron01:~$ su root root@heron01:/home/yitian# netstat -nltp|grep 2181 t...

Blossom 518

手把手入门YOLO到改进优化教程专栏介绍与说明——列表目录查阅(持续更新)

手把手入门YOLO到改进优化教程专栏介绍与说明——列表目录查阅(持续更新)

嵌入式阿齐Archie 2万+

精华!分布式配置中心 Zookeeper SpringCloud-Config 和 Apollo 配置中心选型对比

文章目录一、配置中心的优势二、SpringCloud Config + SpringCloud Bus作为配置中心和消息总线2.1 Server服务端说明2.2 Client客户端说明2.3 spring-config 流程图2.4 spring-config 特点三、Spring Cloud Zookeeper Config3.1 选举Leader算法3.2 Zookeeper作为配置中心的特点四、携程Apollo配置中心---最全面的配置中心4.1 Apollo配置中心的流程描述4.2 Apollo配置

qq_34168515的博客 2567

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Spring Cloud 微服务之配置中心解决方案

关于注册中心这一篇博文,本来想分很多篇去介绍的,但是仔细想想,觉得太繁复而且啰嗦,所以还是写一篇介绍其中的核心原理,并不做任何示例,如果想要查看具体用法可以自行查看官方文档或者度娘。因为配置中心太多了,不说其他的Spring Cloud就集成了好几种框架作为配置中心比如:Spring Cloud Config, Archaiu,Consul, Spring Cloud Zookeeper ,Alibaba Nacos等。每个公司都有不同的选择,不可能一一的去列举,重点是掌握核心,当遇到新的配置中心的时候能够

微服务技术栈 527

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

SpringCloud(二)

一 声明式服务调用:Feign 在前面的学习中,我们使用了Ribbon的负载均衡功能,大大简化了远程调用时的代码: String url = "http://user-service/user/" + id; User user = restTemplate.getForObject(url, User.class); 如果就学到这里,你可能以后需要编写类似的大量重复代码,格式基本相同,无非参数不一样。有没有更优雅的方式,来对这些代码再次优化呢? 这就是我们接下来要学的Feign的功能了。 1 简介 Fe

amspony的博客 418

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

SpringCloud注释

Hystrix @HystrixCommand @EnableHystrix 注意:@EnableHystrix注解包含了在8001主配置类上加的@EnableCircuitBreaker注解 @DefaultProperties(defaultFallback = “”)

qq_43372150的博客 224

SpringCloud四个注册中心的比较

一、概述springcloud是一个非常优秀的微服务框架,要管理众多的服务,就需要对这些服务进行治理,也就是我们说的服务治理,服务治理的作用就是在传统的rpc远程调用框架中,管理每个服务与...

qianshanding0708的博客 766

基于Java+SpringBoot+SSM,SpringCloud宠物社区(源码+LW+调试文档+讲解等)/宠物交流平台app/宠物爱好者社区app/宠物社交应用app/宠物互动社区app

前端:Spring+SpringMVC+Mybatis,SpringCloud微服务、网关、注册中心等组件,Maven构建项目jar包,内置Tomcat运行Web环境,后端语言Java后端:SpringBoot+Mybatis数据库:MySQL、SQLServer开发工具:IDEA、Eclipse、Navicat等✌关于毕设项目技术实现问题讲解也可以给我留言咨询!!!MyBatis 是 SSM 中负责数据持久化的关键组件。

2401_88036107的博客 474

基于Java+SpringBoot+SSM,SpringCloud智能垃圾分类助手系统(源码+LW+调试文档+讲解等)/智能垃圾分类软件/垃圾分类助手/智能分类系统/垃圾分类智能应用

前端:Spring+SpringMVC+Mybatis,SpringCloud微服务、网关、注册中心等组件,Maven构建项目jar包,内置Tomcat运行Web环境,后端语言Java后端:SpringBoot+Mybatis数据库:MySQL、SQLServer开发工具:IDEA、Eclipse、Navicat等✌关于毕设项目技术实现问题讲解也可以给我留言咨询!!!MyBatis 是 SSM 中负责数据持久化的关键组件。

2401_88036107的博客 131

Zookeeper作为SpringCloud配置中心

一、背景介绍 在分布式系统中动态配置中,可以避免重复重启服务,动态更改服务参数等。一句话非常重要。 哈哈。 Zookeeper 作为知名的分布式调度系统, 我们也可以利用其作为配置中心,其wacther 主动通知机制, 可以将node 节点数据变更信息及时通知到client 端。 环境依赖 名称 值 备注 JDK 1.8 Consul 1.5.2 注册中心,Consul安装及...

希望我的博客,能解决你工作中的问题 7412

SpringCloud-配置中心 zookeeper

微信公众号:glmapper工作室 掘金专栏:glmapper 微 博:疯狂的石头_henu 欢迎关注,一起学习分享技术 SpringCloud-配置中心 zookeeper环境准备zk &amp; zkuizkzkui配置文件新建 sofa-config-zookeeper依赖引入配置文件启动类资源类启动&amp;验证动态刷新 SpringCloud 除了config自己的...

glmapper_2018 1189

SpringCloud-Config 配置中心原理

微信公众号:glmapper工作室 掘金专栏:glmapper 微 博:疯狂的石头_henu 欢迎关注,一起学习分享技术 SpringCloud-Config 配置中心原理服务端实现@EnableConfigServer 及配置类EnvironmentRepositoryConfigurationMultipleJGitEnvironmentRepositoryAbstrac...

glmapper_2018 6431

如何在SpringCloud2023中快速集成配置中心

SpringCloud项目中集成配置中心可以更加方便的管理多版本的配置,此处使用springcloudconfig作为示例说明。

欢迎关注公众号“雨林寻北”,添加个人微信codetrend(备注技术)。 886

SpringCloud Zookeeper配置中心详解

环境:Spring Boot 2.3.9 + Spring Cloud Hoxton.SR8 服务发现注册请参考《SpringCloud Zookeeper服务发现及负载均衡》 zookeeper安装配置请参考《Kafka(zookeeper)环境配置超级详细》 zkui安装配置 zkui是一个web界面的管理工具,虽然难看不好用,但总比敲命令舒服些。 下载地址 构建 mvn clean install 修改配置文件 config.cfg 修改该文件的zkServer节点 ...

asoklove的专栏 731

springcloud-zookeeper分布式配置中心

springcloud-zoookeeper分布式配置中心 ​ 配置信息一般写在application.yml或者bootstrap.yml文件中,bootstrap.yml文件优先级高。但是分布式配置中心需要读取一些公共的配置和根据不同的项目模块读取不同zk节点的配置信息,所以配置信息应该建立在zk节点下。 1.配置中心所需的zookeeper相关配置 server: port: 9001 spring: application: name: Provider profiles:

weixin_42507606的博客 1292
上一篇: 什么是交叉熵
下一篇: Spark性能优化——基础篇
yyoc97
博客等级 码龄12年 272粉丝 91原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值