
zookeeper
文章平均质量分 74
zookeeper
悬浮海
正在准备系列内容,更新较少。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
zookeeper目录
一、zookeeper概述原创 2022-05-14 15:30:30 · 1404 阅读 · 0 评论 -
Zookeeper 是如何保证数据一致性的
zk目录文章目录1、Paxos算法1.1、Paxos算法-解决什么问题1.2、Paxos算法描述1.3、Paxos算法流程1.3.1、情况11.3.2、情况21.3.3、情况32、ZAB 协议2.1、什么是 ZAB 算法2.2、Zab 协议内容2.2.1、消息广播2.2.2、崩溃恢复1)崩溃恢复—异常假设2)崩溃恢复—Leader 选举3)崩溃恢复—数据恢复3、CAP理论思考:Zookeeper 是如何保证数据一致性的?这也是困扰分布式系统框架的一个难题。1、Paxos算法1.1、Paxo原创 2022-05-23 22:11:57 · 1460 阅读 · 0 评论 -
十、ZooKeeper 分布式锁案例
zk目录文章目录十、ZooKeeper 分布式锁案例10.1、原生 Zookeeper 实现分布式锁案例10.1.1、分布式锁实现10.1.2、分布式锁测试10.2、Curator 框架实现分布式锁案例十、ZooKeeper 分布式锁案例什么叫做分布式锁呢?比如说 “进程1” 在使用该资源的时候,会先去获得锁,"进程 1"获得锁以后会对该资源保持独占,这样其他进程就无法访问该资源,"进程 1"用完该资源以后就将锁释放掉,让其他进程来获得锁,那么通过这个锁机制,我们就能保证了分布式系统中多个进程能原创 2022-05-21 15:23:15 · 490 阅读 · 0 评论 -
九、zookeeper:服务器动态上下线监听案例
zk目录文章目录4.1、需求4.2、需求分析-服务器动态上下线4.3、具体实现4.3.1、服务器端代码4.3.2、客户端代码4.4、测试4.4.1、在 Linux 命令行上操作增加减少服务器4.4.2、在 Idea 上操作增加减少服务器4.1、需求某分布式系统中,主节点可以有多台,可以动态上下线,任意一台客户端都能实时感知到主节点服务器的上下线。4.2、需求分析-服务器动态上下线以下是我个人的理解:对于zookeeper集群来说,图中服务器和客户端都是 “客户端“,图中的服务器做的是创建原创 2022-05-19 21:46:27 · 577 阅读 · 0 评论 -
八、Zookeeper客户端向服务端写数据流程
zk目录文章目录八、客户端向服务端写数据流程8.1、写流程之写入请求直接发送给Leader节点8.2、写流程之写入请求发送给follower节点八、客户端向服务端写数据流程8.1、写流程之写入请求直接发送给Leader节点1:客户端给服务器的leader发送写请求,2:leader写完数据后,依次给follower发送写请求,3:follower写完发送ack给leader,4:超过半数以上的都写完,leader则发会ack给客户端。5:之后leader再给其他fol原创 2022-05-18 22:13:47 · 433 阅读 · 0 评论 -
七、Zookeeper客户端 API 操作(IDEA)
zk目录文章目录七、Zookeeper客户端 API 操作(IDEA)7.1、IDEA 环境搭建7.2、创建 ZooKeeper 客户端并测试API七、Zookeeper客户端 API 操作(IDEA)前提:保证 wlw102、wlw103、wlw104 服务器上 Zookeeper 集群服务端启动。7.1、IDEA 环境搭建1)创建一个工程:zookeeper2)添加pom文件<dependencies> <dependency>原创 2022-05-18 22:12:25 · 460 阅读 · 0 评论 -
六、Zookeeper客户端命令行操作
zk目录文章目录6.1、命令行语法6.2、查看znode 节点数据信息6.3、创建节点,节点类型(持久/短暂/有序号/无序号)6.3.1、创建节点(永久节点 + 不带序号)6.3.2、创建带序号的节点(永久节点 + 带序号)6.3.3、创建短暂节点(短暂节点 + 不带序号 or 带序号)6.3.4、修改节点数据值6.4、监听器原理6.4.1、监听原理详解6.4.2、常见的监听6.4.2.1、节点的值变化监听6.4.2.2、节点的子节点变化监听(路径变化)6.5、节点删除与查看6.1、命令行语法原创 2022-05-17 22:38:07 · 1257 阅读 · 0 评论 -
zookeeper集群报错:Error: JAVA_HOME is not set and java could not be found in PATH.
在学习搭建zookeeper集群的时候会经常的启动和停止zookeeper服务,以及查看服务状态。一个一个启动非常麻烦,通过一段shell脚本来进行启动就非常方便了。那么问题来了,单独启动zookeeper服务的时候是完全没问题的,通过脚本来启动的时候就会报错:解决办法:在zookeeper目录下的bin目录下,有一个zkEnv.sh文件,在文件代码部分的 前面 加上自己的JAVA_HOME路径即可。export JAVA_HOME=/opt/module/jdk1.8.0_261...原创 2022-05-16 22:51:35 · 2375 阅读 · 1 评论 -
五、ZK 集群启动停止脚本
zk目录1)在 wlw102 的/home/tom/bin 目录下创建脚本[root@wlw102 ~]# cd /home/tom/bin[root@wlw102 bin]# vim zk.sh在脚本中编写如下内容(这是一个shell脚本)#!/bin/bashcase $1 in"start"){ for i in wlw102 wlw103 wlw104 do echo ---------- zookeeper $i 启动 ------------原创 2022-05-16 21:28:27 · 501 阅读 · 0 评论 -
四、zookeeper集群leader选举机制
zk目录文章目录4.1、Zookeeper选举机制之第一次启动4.2、Zookeeper选举机制之非第一次启动SID:服务器ID。用来唯一标识一台ZooKeeper集群中的机器,每台机器不能重复,和myid一致。ZXID:事务ID。ZXID是一个事务ID,用来标识一次服务器状态的变更。在某一时刻,集群中的每台机器的ZXID值不一定完全一致,这和ZooKeeper服务器对于客户端“更新请求”的处理逻辑有关。Epoch:每个Leader任期的代号。没有Leader时同一轮投票过程中的逻辑时钟值是相同原创 2022-05-15 21:52:34 · 904 阅读 · 0 评论 -
三、Zookeeper 集群搭建
zk目录文章目录3.1、VMware网络配置-设置linux系统的固定IP地址3.1.1、修改虚拟机的网络配置3.1.2、Windows电脑的网络配置3.1.3、linux系统ip设置3.2、修改linux系统的hosts文件3.3、先在一台机器上安装zookeeper3.3.1、增加myid文件3.3.2、在zoo.cfg文件增加集群配置3.4、克隆出另外两台机器3.4.1、修改ip地址3.4.2、修改zookeeper的myid文件3.5、zookeeper集群测试3.1、VMware网络配置-原创 2022-05-15 18:58:59 · 877 阅读 · 0 评论 -
二、Zookeeper安装与配置参数说明
二、Zookeeper安装2.1、本地模式安装安装可看这篇,里面有Zookeeper安装 windows 和 Linux 下的安装:三、Dubbo环境搭建zookeeper目录中常用的文件夹说明:bin: 框架启动停止,客户端和服务端的conf :配置文件信息docs:文档lib :配置文档的依赖2.2、配置参数解读Zookeeper中的配置文件zoo.cfg中参数含义解读如下:1)tickTime = 2000:通信心跳时间,Zookeeper服务器与客户端心跳时间,单位毫秒原创 2022-05-14 15:56:24 · 426 阅读 · 0 评论 -
一、zookeeper概述
一、zookeeper概述Zookeeper 是一个开源的分布式的,为分布式框架提供协调服务的 Apache 项目。1.1、Zookeeper工作机制Zookeeper从设计模式角度来理解:是一个基于观察者模式设计的分布式服务管理框架。它负责存储和管理大家都关心的数据,然后接受观察者的注册,一旦这些数据的状态发生变化,Zookeeper就将负责通知已经在Zookeeper上注册的那些观察者做出相应的反应。zookeeper主要是文件系统和通知机制:文件系统主要是用来存储数据通知机制主要是服务原创 2022-05-14 15:26:39 · 380 阅读 · 0 评论