PrettyZoo-高颜值的Zookeeper可视化工具

PrettyZoo下载

PrettyZoo是一款基于 Apache Curator 和 JavaFX 实现的 Zookeeper 图形化管理客户端。颜值很高,推荐使用。

如果下面的github下载太慢或者是下载不下来从我百度网盘里面下载
链接: https://pan.baidu.com/s/1eFGd6sgf_KG0tPrsnQdrVA 提取码: nkzc 复制这段内容后打开百度网盘手机App,操作更方便哦

  • 首先下载PrettyZoo的安装包,下载地址:https://github.com/vran-dev/PrettyZoo/releases

img

  • 我们需要创建一个连接,连接到 ZooKeeper,可以发现PrettyZoo是支持通过 SSH 通道连接的;

img

  • 双击连接,我们可以查看到 ZooKeeper 中存储的数据,很清楚的发现,ZooKeeper 是按目录结构存储数据的;

img

  • 右键目录,我们可以创建和删除 znode,有了这个工具,基本上可以和命令行操作说再见了;

img

  • 如果你还是觉得命令行比较炫酷的话,PrettyZoo也实现了命令行功能,打开命令行标签就可以愉快地敲命令了。

img

节点类型

ZooKeeper 中的节点(znode)是有生命周期的,这取决于节点的类型。类型有主要有下面四种:

  • 持久节点(Persistent):默认节点类型,节点创建后,会一直存在。
  • 持久顺序节点(Persistent Sequential):具有持久节点特性,节点名称后会增加自增数字后缀。
  • 临时节点(Ephemeral):临时存在,当创建节点的会话关闭时,节点被删除。
  • 临时顺序节点(Ephemeral Sequential):具有临时节点特性,节点名称后会增加自增数字后缀。

如果你用命令行创建节点的话,顺序特性对应-s选项,临时特性对应-e选项,比如如下命令:

# 创建持久顺序节点
create -s /test/seq segText
# 创建临时节点
create -e /test/tmp tmpText
# 创建临时顺序节点
create -s -e /test/seqTmp setTmpText
123456

创建成功后显示如下:

img

如果你用PrettyZoo来创建的话,只要勾选一个选项即可。

img

作为注册中心使用

CAP 是分布式架构中的重要理论,其包括一致性 (Consistency)、可用性(Availability) 和分区容忍性(Partition tolerance)。我们经常使用的 Eureka 支持 AP,而 ZooKeeper 支持 CP。接下来我们学习下 ZooKeeper 在 Spring Cloud 中作为注册中心的应用。

  • ZooKeeper 作为注册中心使用,用法基本和 Eureka 和 Consul 相同,首先我们需要在pom.xml中添加 ZooKeeper 的服务发现组件;
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-zookeeper-discovery</artifactId>
</dependency>
1234
  • 之后修改配置文件application.yml,添加 ZooKeeper 相关配置;
spring:
  cloud:
    zookeeper:
      # zookeeper连接地址
      connect-string: localhost:2181
      discovery:
        # 作为服务注册
        register: true
        # 注册时使用IP地址而不是hostname
        prefer-ip-address: true
12345678910
  • 这里还是使用《Spring Cloud 学习教程》中的例子,有两个服务zookeeper-ribbon-servicezookeeper-user-service,前者通过 Ribbon 远程调用后者;

img

  • 分别启动两个服务,我们通过PrettyZoo可以发现,当 ZooKeeper 作为注册中心时,注册服务的名称、IP、端口都被存储到了里面;

img

  • 我们调用zookeeper-ribbon-service中的接口测试下,发现可以正常访问,接口地址:http://localhost:8301/user/1

img

  • 如果这时候我们把zookeeper-user-service服务关掉的话,我们可以发现 ZooKeeper 会自动删除存储的数据;

img

  • 由此可以看出,ZooKeeper 作为微服务的注册中心是通过临时节点来实现的,当服务上线时会向 ZooKeeper 中注册,当服务下线时会被 ZooKeeper 删除,保障了微服务的高可用。
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值