什么是ZooKeeper?及其应用场景简介

作者: 我犟不过你 | 来源:发表于2020-11-12 16:41 被阅读0次

概念

一个分布式协调框架,主要用于分布式场景下的数据管理问题,如:统一命名服务,状态同步服务,集群管理,分布式应用配置项等。

核心概念

1、文件系统的数据结构

数据结构模型:

zookeeper的数据结构是树形结构,每个节点都是像文件目录一样,以“/”开头,如下图所示:

zk数据结构

节点类型

zk主要分为六种节点类型,具体如下图所示:

节点类型
注意:临时节点不能创建子节点

2、事件监听机制

客户端可以对节点或者目录进行监听,当其他客户端对节点进行修改,会由服务端向客户端发送消息。
客户端监听节点收到数据后,会暂停此次的监听,即监听是一次性的。

应用场景

1、配置中心

配置中心

2、注册中心

注册中心

3、分布式锁

分布式锁

使用上面的方式,会产生“羊群效应”,即:当一个节点node被修改,即锁被释放,会通知所有的watch节点,一是这样是非公平锁,另外会对服务器产生较大的压力。可以通过下面的结构创建分布式锁:

分布式锁结构

按照上面的结构:
1、首先创建一个/lock持久化节点
2、四个请求获取锁时,分布按照顺序创建四个顺序临时节点,并且,后面的节点watch前一个节点。
3、当新的获取锁的请求来时,判断当前节点是否是/lock下的第一个节点。
1)是,则直接获取到锁。
2)否,创建一个顺序节点,监听前一个节点。
4、假设当第一个节点释放锁后,其后的第一个节点通过watch会收到通知,成功获取锁,不会有其他节点进行竞争。

相关文章

  • 什么是ZooKeeper?及其应用场景简介

    概念 一个分布式协调框架,主要用于分布式场景下的数据管理问题,如:统一命名服务,状态同步服务,集群管理,分布式应用...

  • 深入了解Zookeeper核心原理

    之前的文章[Zookeeper基础原理&应用场景详解]中将Zookeeper的基本原理及其应用场景做了一个详细的介...

  • Zookeeper及其应用场景

    Overview ZooKeeper(简称ZK)是一个分布式的,开放源码的分布式应用程序协调服务,是Google的...

  • Zookeeper面试题锦集

    1、zookeeper是什么框架?zookeeper是一个开源的分布式协调服务框架。 2、有哪些应用场景?应用场景...

  • ZooKeeper应用场景及方案介绍

    本文主要从应用的角度对ZooKeeper做了浅析,试图阐明ZooKeeper是什么、主要应用场景有哪些、常用场景可...

  • win10系统安装Zookeeper方法

    Zookeeper是什么? 简介:Apache ZooKeeper是一种用于分布式应用程序的高性能协调服务,提供一...

  • 学习笔记12-zookeeper

    什么是zookeeper 简介:Apache Zookeeper是一种用于分布式应用程序的高性能协调服务,提供一种...

  • ZooKeeper简介

    ZooKeeper简介 ZooKeeper:分布式应用的协调服务 ZooKeeper是一个分布式的开源协调服务,用...

  • (1) Zookekper及其基本原理

    本文将从以下几点来介绍Zookekper及其基本原理: Zookeeper项目简介 Zookeeper有哪些功能 ...

  • 006—Zookeeper—架构详解-1

    zookeeper logo及其作用简介 ZooKeeper是一种分布式协调服务,用于管理大型主机。在分布式环境中...

网友评论

    本文标题:什么是ZooKeeper?及其应用场景简介

    本文链接:https://www.haomeiwen.com/subject/jszlbktx.html