首页 > 其他分享 >SpringCloud之Zookeeper作为注册中心

SpringCloud之Zookeeper作为注册中心

时间:2023-05-11 20:22:30浏览次数:31  
标签:zookeeper producer SpringCloud Zookeeper 注册 Spring hello localhost

Spring Cloud Zookeeper通过自动配置和绑定到Spring环境,为Spring Boot应用程序提供Apache Zookeepper集成。通过一些简单的注释,可以快速启用和配置应用程序中的常见模式,并使用Zookeeper构建大型分布式系统。提供的模式包括服务发现和分布式配置。

 

特征

  • 服务发现:可以向Zookeeper注册实例,客户端可以使用Spring托管bean发现实例
  • 支持Spring Cloud LoadBalancer-客户端负载平衡解决方案
  • 支持Spring Cloud OpenFeign
  • 分布式配置:使用Zookeeper作为数据存储

要使用zookeeper作为注册中心只需要加入依赖:

<dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-zookeeper-discovery</artifactId>
    </dependency>

并在application.properties配置:

spring.cloud.zookeeper.connect-string=localhost:2181

启动zookeeper后,启动GatewayServer和Producer。访问http://localhost:8500/producer/hello,看到hello,null,8002。同时再启动端口是8004的Producer,访问http://localhost:8500/producer/hello,看到hello,null,8002和hello,null,8004交替出现,说明负载均衡生效。

 

连接上zookeeper后,运行命令ls /,看到services。在运行ls /services,看到:

 

在运行ls /services/producer,看到:

 

将zookeeper服务关闭后,在访问http://localhost:8500/producer/hello出现404。将zookeeper换成Eureka作为注册中心,关闭Eureka后依然能访问。zookeeper提供的是一致性(CP),Eureka提供的是可用性(AP)

标签:zookeeper,producer,SpringCloud,Zookeeper,注册,Spring,hello,localhost
From: https://www.cnblogs.com/shigongp/p/17392098.html

相关文章

  • zookeeper相关命令
    1、启动zookeeper服务:bin目录下执行,./zkServer.sh start。2、关闭zookeeper服务:bin目录下执行,./zkServer.sh stop。3、查看zookeeper服务:bin目录下执行,./zkServer.sh status。未启动Zookeeper服务。启动了Zookeeper服务。4、重启zookeeper服务:bin目录下执行,./zkServer......
  • vue批量注册
    vue批量注册组件在components新建index.js文件importVuefrom'vue'//使用webpack读取文件//这段代码表示读取./目录下且不加载子目录找到.vue的文件constimportCom=require.context('./',false,/\.vue/)importCom.keys().forEach((item)=>{//获取......
  • zookeeper选举机制
    1.zookeeper选举机制zookeeper默认算法是FastLeaderElection,采用投票数大于半数则胜出的逻辑2.概念2.1)服务器ID比如有三台服务器,编号分别是1,2,3。编号越大在选择算法中的权重越大。2.2)选举状态Looking,竞选状态。Following,随从状态,同步leader状态,参与投票。Obeserving,观察......
  • Zookeeper中Shell客户端-crud操作
    1.读取节点ls命令:列出zookeeper指定节点下的所有子节点,只能查看指定节点下的第一级的所有子节点;get命令:可以获取zookeeper指定节点的数据内容和属性信息。lspath[watch]getpath[watch]ls2path[watch]2.更新节点setpathdata[version]data就是更新的新内容,version......
  • zookeeper中shell客户端设置watcher
    1.shell客户端设置watcher1.1创建节点监听:createpathwatch1.2设置节点变动监听:getpathwatch1.3通过另一个客户端更改节点数据:setpathwatch1.4此时设置监听的节点收到通知关注我的公众号SpaceObj领取idea系列激活码......
  • Zookeeper中watcher介绍-通知状态事件类型
    1.ZookeeperWatcher简介1.1)提供了分布式数据发布、订阅功能。1.2)引入了watcher机制来实现这种分布式的通知功能(主要触发事件:节点创建、节点删除、节点改变等)。1.3)watcher包括以下三个过程:客户端向服务端注册watcher、服务端事件发生触发watcher、客户端回调watcher得到触发事......
  • zookeeper中Shell客户端Quota命令
    1.quota1.1创建quotacreatepathdata#path表示节点,data表示内容1.2对节点进行限制setquota-n|-bvalpath对节点增加限制。n:表示子节点的最大个数b:表示数据值的最大长度val:子节点最大个数或数据值的最大长度path:节点路径注意:quota是一种非强制性的限制,即创建......
  • Zookeeper_java_API的简介
    1.Zookeeper_java_API的简介1.1)org.apache.zookeeper.ZookeeperZookeeper是在Java客户端主类,负责建立与zookeeper集群的会话,并提供方法进行操作。1.2)org.apache.zookeeper.WatcherWatcher接口表示一个标准的事件处理器,其定义了事件通知相关的逻辑,包含KeeperState和EventType两......
  • BBS注册
    models模板创建表字段如果想要在django自带的user表中增加新的字段那么需要在数据库迁移前创建就需要在在settings里面配置AUTH_USER_MODEL='app01.UserInfo'在写字段时先写普通字段之后再写外键字段models文件里面的代码fromdjango.contrib.auth.modelsimportAbstr......
  • 注册和登录
    表结构设计fromdjango.dbimportmodels#Createyourmodelshere.fromdjango.contrib.auth.modelsimportAbstractUser'''先写普通字段,再考虑外键字段'''#用户表classUserInfo(AbstractUser):#继承了Auth模块,下面是我们额外加的字段phone=model......