IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> Zookeeper从入门到精通 -> 正文阅读

[大数据]Zookeeper从入门到精通

Zookeeper是什么

ZooKeeper 是 Apache 软件基金会的一个软件项目,为分布式应用提供协调服务,保证数据一致性。它为大型分布式计算提供开源的分布式配置管理服务、服务注册发现。

ZooKeeper 的架构通过冗余服务实现高可用性。

一个典型的分布式数据一致性的解决方案,分布式应用程序可以基于它实现诸如数据发布/订阅、负载均衡、命名服务、分布式协调/通知、集群管理、Master 选举、分布式锁和分布式队列等功能。

在这里插入图片描述

CAP理论

CAP 理论指出对于一个分布式计算系统来说,不可能同时满足以下三点:

  • 一致性:在分布式环境中,一致性是指数据在多个副本之间是否能够保持一致的特性,等同于所有节点访问同一份最新的数据副本。在一致性的需求下,当一个系统在数据一致的状态下执行更新操作后,应该保证系统的数据仍然处于一致的状态。
  • 可用性:每次请求都能获取到正确的响应,但是不保证获取的数据为最新数据。
  • 分区容错性:分布式系统在遇到任何网络分区故障的时候,仍然需要能够保证对外提供满足一致性和可用性的服务,除非是整个网络环境都发生了故障。

一个分布式系统最多只能同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance)这三项中的两项。

在这三个基本需求中,最多只能同时满足其中的两项,P 是必须的,因此只能在 CP 和 AP 中选择,zookeeper 保证的是 CP,对比 spring cloud 系统中的注册中心 eruka 实现的是 AP。

在这里插入图片描述

Zookeeper安装

zookeeper 下载地址为: https://zookeeper.apache.org/releases.html。
在这里插入图片描述
下载后解压:
在这里插入图片描述
将 conf 目录下的 zoo_sample.cfg 文件,复制一份,重命名为 zoo.cfg:
在这里插入图片描述

在安装目录下面新建一个空的 data 文件夹:
在这里插入图片描述

修改 zoo.cfg 配置文件,将 dataDir=/tmp/zookeeper 修改成 zookeeper 安装目录所在的 data 文件夹:

在这里插入图片描述

启动程序:
在这里插入图片描述

启动客户端:
在这里插入图片描述

查看启动状态:
在这里插入图片描述

搭建Zookeeper集群

在这里插入图片描述

zookeeper 的三个端口作用

1、2181 : 对 client 端提供服务
2、2888 : 集群内机器通信使用
3、3888 : 选举 leader 使用

三台zookeeper修改配置文件:
在这里插入图片描述
在三台zookeeper的data目录下新建myid文件,并添加zookeeper标识号:
在这里插入图片描述
查看状态:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

数据模型

在这里插入图片描述

节点类型

1.持久化节点
2.持久化顺序节点 -s
3.临时节点 -e
4.临时顺序节点 -e -s

客户端命令

ls命令

ls 命令用于查看某个路径下目录列表。

格式:

ls path

在这里插入图片描述

ls2命令

在这里插入图片描述

create 命令

create 命令用于创建节点并赋值。

格式:

create [-s] [-e] path data acl

在这里插入图片描述

get命令

get 命令用于获取节点数据和状态信息。

格式:

get path [watch]
在这里插入图片描述

set命令

set 命令用于修改节点存储的数据。

格式:

set path data [version]

在这里插入图片描述

delete命令

delete 命令用于删除某节点。

格式:

delete path [version]

在这里插入图片描述

deleteall命令

deleteall 命令用于删除带子节点的节点。

deleteall path

Zookeeper 节点特性

1、同一级节点 key 名称是唯一的
2、创建节点时,必须要带上全路径
3、session 关闭,临时节点清除
4、自动创建顺序节点
5、watch 机制,监听节点变化
6、delete 命令只能一层一层删除

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-07-29 11:43:03  更:2021-07-29 11:44:32 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/3 9:04:14-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码