注册中心-Zookeeper

空~2022年10月9日
  • Dubbo
大约 2 分钟

注册中心-Zookeeper

对于服务提供方,它需要发布服务,而且由于应用系统的复杂性,服务的数量、类型也不断膨胀;对于服务消费方,它最关心如何获取 到它所需要的服务,而面对复杂的应用系统,需要管理大量的服务调用。

而且,对于服务提供方和服务消费方来说,他们还有可能兼具这两种角色,即需要提供服务,有需要消费服务。 通过将服务统一管理起来,可以有效地优化内部应用对服务发布/使用的流程和管理。

服务注册中心可以通过特定协议来完成服务对外的统一。

Dubbo 提供的注册中心有如下几种类型可供选:

Multicast 注册中心:组播方式

Redis 注册中心:使用 Redis 作为注册中心

Simple 注册中心:就是一个 dubbo 服务。作为注册中心。提供查找服务的功能。

Zookeeper 注册中心:使用 Zookeeper 作为注册中心

推荐使用 Zookeeper 注册中心。

注册中心工作方式

image-20221009193052415

Zookeeper

Zookeeper 是一个高性能的,分布式的,开放源码的分布式应用程序协调服务。简称 zk。 Zookeeper 是翻译过来是动物管理员。可以理解为 windows 中的资源管理器或者注册表。他是一个树形结构。这种树形结构和标准文件系统相似。ZooKeeper 树中的每个节点被称为 Znode。和文件系统的目录树一样,ZooKeeper 树中的每个节点可以拥有子节点。每个节点表示一个唯一服务资源。Zookeeper 运行需要 java 环境。

官网下载地址: http://zookeeper.apache.org/

安装配置 Zookeeper

下载的文件 zookeeper.tar.gz. 解压后到目录就可以了.

修改 zookeeper/conf/ 目录下配置文件.

image-20221009193648397

复制 zoo-sample.cfg 改名为 zoo.cfg.

配置说明:

tickTime: 心跳的时间,单位毫秒. Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 tickTime 时间就会发送一个心跳。表明存活状态。

dataDir: 数据目录,可以是任意目录。存储 zookeeper 的快照文件、pid 文件,默认为 /tmp/zookeeper,建议在 zookeeper 安装目录下创建 data 目 录,将 dataDir 配置改为 /usr/local/zookeeper-3.4.10/data

clientPort: 客户端连接 zookeeper 的端口,即 zookeeper 对外的服务端口,默认为 2181

配置内容:

  1. dataDir : zookeeper 数据的存放目录
  2. admin.serverPort=8888 原因:zookeeper 3.5.x 内部默认会启动一个应用服务器,默认占用 8080 端口

image-20221009194232752

直接双击 bin 目录下的 zkServer.cmd 即可在 window 平台启动 zookeeper 服务.

image-20221009195746247