博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Zookeeper——Zookeeper是什么
阅读量:3941 次
发布时间:2019-05-24

本文共 1014 字,大约阅读时间需要 3 分钟。

Zookeeper——Zookeeper是什么

一、Zookeeper是什么?

1.Zookeeper是一个数据库:

  • Zookeeper是可以存数据的,Zookeeper数据库里的数据节点分为:持久化节点和临时节点

    • create命令创建节点:create /节点 内容
    • delete命令删除节点:delete /节点 内容
    • get命令获取节点内容:get /节点
  • Zookeeper是一个拥有文件系统特点的数据库(树形的结构)

  • Zookeeper是一个解决了数据一致性问题的分布式数据库

  • Zookeeper是一个具有发布和订阅功能的分布式数据库(Watch)

2.Zookeeper是一个分布式服务框架(中间件)

  • Zookeeper是一个分布式服务框架,是Apach Hadoop的一个子项目,他主要是用来解决分布式应用中常用到的一些数据管理问题,如:统一命名服务,集群管理,分布式应用配置项的管理
  • ZK端口号:2181
  • 作用于分布式系统,提供了Java和C语言的客户端接口API

二、分布式系统

1.什么是分布式系统

  • 很多计算机组成的一个整体,一个整体一致对外并处理同一个请求
  • 内部每台计算机都是可以相互通讯的(RPC/RESTful)

分布式系统的意思就是将原有的系统按照自己的业务需求进行拆分(模块化),拆分成一个一个的子系统,也就是拆分成不同的服务,然后将不同的服务组成集群。这样一个面向服务的开发就是微服务

  • 这样做的好处:因为用户的请求会分到不同的系统中去,所以集群的负载会提高

2.分布式系统的瓶颈

当某一个时间段的用户访问量非常多的时候,为了方式并发的错误,我们就只能按照先来的先走的这种作法实现同步,这样才能实现数据的一致性,也就是分布式锁的作用。

三、Zookeeper

1.1 Zookeepe的概述

在这里插入图片描述

1.2 Zookeeper的特性

在这里插入图片描述

在这里插入图片描述

1.3 Zookeeper的集群角色

在这里插入图片描述

Leader:领导者

  • 响应事务性请求(增删改)
    在这里插入图片描述

Foolower:跟随着

  • 响应非事务性请求(查询)
  • 转发事务请求给Leader
  • 参与集群Leader选举投票
    在这里插入图片描述

Oberver:观察者

  • 观察集群最新的状态并且实时同步
  • 集群横向扩展,自定义Oberver
  • 处理非事务请求
  • 转发事务性请求给Leader
  • 不参与集群Leader选举投票
    在这里插入图片描述

1.4 Zookeeper集群搭建(了解)

  • 一般选取奇数台服务器搭建集群:为了迎合选举Leader半数通过
    在这里插入图片描述

转载地址:http://xtiwi.baihongyu.com/

你可能感兴趣的文章
LVM
查看>>
用shell切分文件--split
查看>>
python中判断字符是否为中文
查看>>
Python - 利用zip函数将两个列表(list)组成字典(dict)
查看>>
python-全角转半角
查看>>
Python pass语句作用与用法
查看>>
Java double,float设置小数点位数
查看>>
PyCharm & Jupyter
查看>>
为什么要用Jupyter Notebook
查看>>
sklearn中的LogisticRegression模型
查看>>
pandas.get_dummies 的用法
查看>>
机器学习-训练模型的保存与恢复(sklearn)
查看>>
Spark(二): spark-submit命令详解
查看>>
细品 - 逻辑回归(LR)*
查看>>
hive: size与spilt连用
查看>>
Python:ModuleNotFoundError: No module named 模块名 错误及解决方案
查看>>
Python中os与sys两模块的区别
查看>>
nohup详解
查看>>
idea .gitignore对.idea不起作用解决
查看>>
深度学习中的注意力机制(2017版)-易理解
查看>>