Zookeeper
文章平均质量分 84
ZooKeeper相关技术文章
每天都要进步一点点
工作日常技术学习、积累、总结
展开
-
Zookeeper四字监控命令使用总结
一、概述zooKeeper支持某些特定的四字命令与其的交互。它们大多是查询命令,用来获取 zooKeeper服务的当前状态及相关信息。用户在客户端可以通过 telnet 或 nc 向zooKeeper提交相应的命令。zooKeeper常用四字命令如下:conf:输出相关服务配置的详细信息。比如端口、zk数据及日志配置路径、最大连接数,session超时时间、serverId等 cons:列出所有连接到这台服务器的客户端连接/会话的详细信息。包括“接受/发送”的包数量、session id 、操原创 2021-02-12 08:13:17 · 4429 阅读 · 0 评论 -
Zookeeper开源客户端curator 分布式锁
目录一、概述二、InterProcessMutex分布式可重入排它锁三、InterProcessReadWriteLock读写锁四、总结一、概述前面我们已经介绍过zookeeper是分布式锁的实现方案之一,它是利用临时有序节点的特性来保证唯一性的。Zookeeper分布式锁原理:获取锁在zookeeper中,一个分布式锁对应到zookeeper中的一个文件夹,每个客户端线程请求获取分布式锁的时候,就需要在这个文件夹创建一个临时有序节点,有两种情况:1)、创建的临时顺序节原创 2021-02-02 17:54:04 · 376 阅读 · 0 评论 -
Zookeeeper开源客户端curator watcherAPI的使用
目录一、概述二、监听单个节点变化三、监听子节点变化四、总结一、概述curator提供了两种Watcher(Cache)来监听结点的变化。Node Cache : 只是监听某一个特定的节点,监听节点的新增和修改; PathChildren Cache : 监控一个ZNode的子节点. 当一个子节点增加, 更新,删除时, Path Cache会改变它的状态, 会包含最新的子节点,子节点的数据和状态;二、监听单个节点变化如果我们需要监听单个节点变化,可以使用NodeCache对原创 2021-01-29 10:31:31 · 228 阅读 · 0 评论 -
Zookeeper开源客户端curator
目录一、curator简介二、curator使用三、curator重连策略四、curator新增节点五、curator更新节点六、curator查看节点七、curator查看子节点八、curator删除节点九、总结一、curator简介curator是Netflix公司开源的一个zookeeper客户端,curator框架在zookeeper原生API接口上进行了包装,解决了很多zooKeeper客户端非常底层的细节开发。提供zooKeeper各种应用场景(比如:原创 2021-01-28 16:29:15 · 490 阅读 · 0 评论 -
Zookeeper集群leader选举机制
目录一、概述二、zab协议三、Zookeeper的leader选举四、总结一、概述前面一篇文章我们总结了如何在linux中搭建zookeeper集群,并且可以看到三台服务器分别启动后,zookeeper内部会自动选举出一个leader领导者,其他两台服务器都是作为follower跟随者角色存在,那么,zookeeper内部具体是如何选举产生这个leader的呢?本篇我们文章我们就将一一分析。二、zab协议zab协议的全称是 Zookeeper Atomic Broadcast原创 2021-01-27 15:26:39 · 1159 阅读 · 0 评论 -
Zookeeper集群环境搭建
目录一、概述二、zookeeper集群搭建三、Java客户端连接zookeeper集群四、总结一、概述前面我们已经搭建过单机版的zookeeper环境,如果还没搭建的小伙伴可以参考进行学习。在生产环境中,为了高可用,我们的zookeeper通常都会集群部署,一般很少会单机部署的,本篇文章就将在linux环境下搭建三个节点的zookeeper环境。二、zookeeper集群搭建事先准备好三台虚拟机,IP地址分别为:192.168.179.128 192.168.179.1原创 2021-01-27 14:19:31 · 254 阅读 · 0 评论 -
Zookeeper案例之分布式全局唯一ID生成
目录一、概述二、案例实现一、概述在单体架构中,我们通常使用数据库字段自带的自增auto_increment属性来自动为每一条记录生成唯一的ID,但是当我们采用分布式系统后,特别是分库分表后,就无法再依靠数据库的auto_increment属性来唯一标识一条记录,这就需要采用其他方法来生成全局唯一ID。在zookeeper中,它提供了一种以创建临时有序节点来获取到全局唯一ID,它能保证在整个分布式系统中的全局唯一性。下面我们通过一个简单的案例来说明如何利用zookeeper生成全局唯一原创 2021-01-21 11:01:23 · 2037 阅读 · 3 评论 -
Zookeeper案例之监听配置中心
目录一、概述二、案例一、概述在分布式系统中,每个微服务可能都会有自己的配置文件信息,比如数据库连接、用户名和密码信息都配置在配置文件中,微服务读取配置文件,将配置文件信息存入缓存中。假设我们的配置信息发生变化时,我们还需要重新加载缓存,这比较麻烦。在zookeeper中,我们学习了watcher监听机制,利用监听机制可能轻松实现当配置信息发生变化时,应用程序第一时间发现配置变化并重新加载最新的配置信息。二、案例这里我们以一个简单的案例说明在zookeeper中如何利用watche原创 2021-01-21 10:47:46 · 863 阅读 · 0 评论 -
Zookeeper之事件监听机制
目录一、watcher概念二、watcher架构三、watcher特性四、watcher接口设计五、watcher监控之检查节点是否存在六、watcher监控之查看节点七、watcher监控之查看子节点八、总结一、watcher概念zookeeper提供了数据的发布/订阅功能,多个订阅者可同时监听某一特定主题对象,当该主题对象的自身状态发生变化时(例如节点内容改变、节点下的子节点列表改变等),会实时、主动通知所有订阅者。zookeeper采用了Watcher机制实原创 2021-01-20 14:14:47 · 1261 阅读 · 0 评论 -
Zookeeper Java客户端搭建
目录一、概述二、环境搭建三、创建节点四、更新节点五、删除节点六、查看节点七、查看子节点八、总结一、概述Zookeeper 的Java客户端API使我们更轻松的去对zookeeper进行各种操作,如创建节点、修改节点值、删除节点等等。客户端应该遵循以下几个步骤:连接到zookeeper服务器。zookeeper服务器为客户端分配会话ID。 定期向服务器发送心跳。否则,zookeeper服务器将过期会话ID,客户端需要重新连接。 只要会话ID处于活动状态,就可原创 2021-01-20 11:47:18 · 288 阅读 · 2 评论 -
ZooKeeper 数据模型 Znode 结构特性详解
目录一、概述二、节点类型三、节点特性四、总结一、概述zookeeper的数据节点可以视为树状结构(或者目录),树中的各节点被称为znode(即zookeeper node),一个znode可以有多个子节点,可以说 zookeeper 中的所有存储的数据是由 znode 组成的,并以 key/value 形式存储数据。整体结构类似于 linux 文件系统的模式以树形结构存储,其中根路径以/开头。[zk: localhost:2181(CONNECTED) 0] ls /[a..原创 2021-01-18 16:53:29 · 3329 阅读 · 0 评论 -
Zookeeper的ACL权限控制
目录一、概述二、acl权限各部分组成说明三、授权的相关命令四、world授权模式五、IP授权模式六、Auth授权模式七、Digest授权模式八、多种模式授权九、总结一、概述zookeeper类似linux文件系统,客户端可以创建数据节点、更新节点数据、删除节点等,那么我们如何做到节点的权限控制呢?回想一下linux文件的权限文件,由r(读)、w(写)、x(可执行)组成,同理,zookeeper中存在访问控制列表,也可以实现类似的权限控制。acl 权限控制,使用原创 2021-01-19 11:12:26 · 638 阅读 · 0 评论 -
Zookeeper 常用Shell命令总结
目录一、概述二、基础命令使用一、概述前面一篇文章我们介绍了Zookeeper中节点Znode的数据结构以及特性,本篇我们将总结一些常用的Zookeeper操作数据节点的shell命令。二、基础命令使用zookeeper 命令用于在 zookeeper 服务上执行操作。首先执行命令,打开新的 session 会话,进入终端。下面我们介绍一些基本常用命令的使用。进入bin目录启动zookeeper服务端和客户端:[root@localhost bin]# ./zkCli.sh原创 2021-01-19 10:03:11 · 914 阅读 · 0 评论 -
Linux下安装Zookeeper环境
一、概述ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。zookeeper是一个经典的分布式数据一致性解决方案,致力于为分布式应用提供一个高性能、高可用、且具有严格顺利访问控制能力的分布式协调存储服务。Zookeeper 官网地址:https://zookeeper.apache.org/ZooK原创 2021-01-17 21:10:21 · 337 阅读 · 0 评论