From 7a8f9b162237d760680981604ad483cf51534d3f Mon Sep 17 00:00:00 2001 From: guide Date: Wed, 26 Aug 2020 16:56:34 +0800 Subject: [PATCH] update zookeeper --- README.md | 6 +++--- .../framework/zookeeper/images/watche机制.png | Bin 0 -> 60656 bytes .../zookeeper/images/znode-structure.png | Bin 0 -> 15588 bytes .../zookeeper/images/zookeeper集群.png | Bin 0 -> 27035 bytes .../images/zookeeper集群中的角色.png | Bin 0 -> 65876 bytes .../{ => zookeeper}/zookeeper-in-action.md | 0 .../{ => zookeeper}/zookeeper-intro.md | 8 ++++---- .../zookeeper-plus.md} | 0 8 files changed, 7 insertions(+), 7 deletions(-) create mode 100644 docs/system-design/framework/zookeeper/images/watche机制.png create mode 100644 docs/system-design/framework/zookeeper/images/znode-structure.png create mode 100644 docs/system-design/framework/zookeeper/images/zookeeper集群.png create mode 100644 docs/system-design/framework/zookeeper/images/zookeeper集群中的角色.png rename docs/system-design/framework/{ => zookeeper}/zookeeper-in-action.md (100%) rename docs/system-design/framework/{ => zookeeper}/zookeeper-intro.md (98%) rename docs/system-design/framework/{ZooKeeper-plus.md => zookeeper/zookeeper-plus.md} (100%) diff --git a/README.md b/README.md index fa5bbae2..488f8e69 100644 --- a/README.md +++ b/README.md @@ -331,9 +331,9 @@ SSO(Single Sign On)即单点登录说的是用户登陆多个子系统的其中 > 前两篇文章可能有内容重合部分,推荐都看一遍。 -1. [【入门】ZooKeeper 相关概念总结 01](docs/system-design/framework/zookeeper-intro.md) -2. [【进阶】ZooKeeper 相关概念总结 02](docs/system-design/framework/zookeeper-plus.md) -3. [【实战】ZooKeeper 实战](docs/system-design/framework/zookeeper-in-action.md) +1. [【入门】ZooKeeper 相关概念总结 01](docs/system-design/framework/zoozookeeper-intro.md) +2. [【进阶】ZooKeeper 相关概念总结 02](docs/system-design/framework/zookeeper/zookeeper-plus.md) +3. [【实战】ZooKeeper 实战](docs/system-design/framework/zookeeper/zookeeper-in-action.md) #### 其他 diff --git a/docs/system-design/framework/zookeeper/images/watche机制.png b/docs/system-design/framework/zookeeper/images/watche机制.png new file mode 100644 index 0000000000000000000000000000000000000000..68144db1e54eaec125e11f1d7af8caaa0903dd06 GIT binary patch literal 60656 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 ZkaH!jY-$Ml0h;}kembr6qOt$NzOTmNDfVs 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 T={D0f%2rP5W6o3x?8N^9yjLHk literal 0 HcmV?d00001 diff --git a/docs/system-design/framework/zookeeper/images/zookeeper集群.png b/docs/system-design/framework/zookeeper/images/zookeeper集群.png new file mode 100644 index 0000000000000000000000000000000000000000..a3067cda18e6f9ca97590ea20dca344a6de508e8 GIT binary patch literal 27035 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 literal 0 HcmV?d00001 diff --git a/docs/system-design/framework/zookeeper-in-action.md b/docs/system-design/framework/zookeeper/zookeeper-in-action.md similarity index 100% rename from docs/system-design/framework/zookeeper-in-action.md rename to docs/system-design/framework/zookeeper/zookeeper-in-action.md diff --git a/docs/system-design/framework/zookeeper-intro.md b/docs/system-design/framework/zookeeper/zookeeper-intro.md similarity index 98% rename from docs/system-design/framework/zookeeper-intro.md rename to docs/system-design/framework/zookeeper/zookeeper-intro.md index 11d339e3..4978fb1a 100644 --- a/docs/system-design/framework/zookeeper-intro.md +++ b/docs/system-design/framework/zookeeper/zookeeper-intro.md @@ -111,7 +111,7 @@ ZooKeeper 数据模型采用层次化的多叉树形结构,每个节点上都 从下图可以更直观地看出:ZooKeeper 节点路径标识方式和 Unix 文件系统路径非常相似,都是由一系列使用斜杠"/"进行分割的路径表示,开发人员可以向这个节点中写人数据,也可以在节点下面创建子节点。这些操作我们后面都会介绍到。 -![ZooKeeper 数据模型](https://images.gitbook.cn/95a192b0-1c56-11e9-9a8e-f3b01b1ea9aa) +![ZooKeeper 数据模型](images/znode-structure.png) ### 3.2. znode(数据节点) @@ -204,7 +204,7 @@ ZooKeeper 采用 ACL(AccessControlLists)策略来进行权限控制,类似 Watcher(事件监听器),是 ZooKeeper 中的一个很重要的特性。ZooKeeper 允许用户在指定节点上注册一些 Watcher,并且在一些特定事件触发的时候,ZooKeeper 服务端会将事件通知到感兴趣的客户端上去,该机制是 ZooKeeper 实现分布式协调服务的重要特性。 -![watcher机制](https://guide-blog-images.oss-cn-shenzhen.aliyuncs.com/2020-8/watcher%E6%9C%BA%E5%88%B6.jpg) +![watcher机制](images/watche机制.png) _破音:非常有用的一个特性,都能出小本本记好了,后面用到 ZooKeeper 基本离不开 Watcher(事件监听器)机制。_ @@ -220,7 +220,7 @@ Session 有一个属性叫做:`sessionTimeout` ,`sessionTimeout` 代表会 为了保证高可用,最好是以集群形态来部署 ZooKeeper,这样只要集群中大部分机器是可用的(能够容忍一定的机器故障),那么 ZooKeeper 本身仍然是可用的。通常 3 台服务器就可以构成一个 ZooKeeper 集群了。ZooKeeper 官方提供的架构图就是一个 ZooKeeper 集群整体对外提供服务。 -![](http://my-blog-to-use.oss-cn-beijing.aliyuncs.com/18-9-10/68900686.jpg) +![](images/zookeeper集群.png) 上图中每一个 Server 代表一个安装 ZooKeeper 服务的服务器。组成 ZooKeeper 服务的服务器都会在内存中维护当前的服务器状态,并且每台服务器之间都互相保持着通信。集群间通过 ZAB 协议(ZooKeeper Atomic Broadcast)来保持数据的一致性。 @@ -230,7 +230,7 @@ Session 有一个属性叫做:`sessionTimeout` ,`sessionTimeout` 代表会 但是,在 ZooKeeper 中没有选择传统的 Master/Slave 概念,而是引入了 Leader、Follower 和 Observer 三种角色。如下图所示 -![](http://my-blog-to-use.oss-cn-beijing.aliyuncs.com/18-9-10/89602762.jpg) +![](images/zookeeper集群中的角色.png) ZooKeeper 集群中的所有机器通过一个 **Leader 选举过程** 来选定一台称为 “**Leader**” 的机器,Leader 既可以为客户端提供写服务又能提供读服务。除了 Leader 外,**Follower** 和 **Observer** 都只能提供读服务。Follower 和 Observer 唯一的区别在于 Observer 机器不参与 Leader 的选举过程,也不参与写操作的“过半写成功”策略,因此 Observer 机器可以在不影响写性能的情况下提升集群的读性能。 diff --git a/docs/system-design/framework/ZooKeeper-plus.md b/docs/system-design/framework/zookeeper/zookeeper-plus.md similarity index 100% rename from docs/system-design/framework/ZooKeeper-plus.md rename to docs/system-design/framework/zookeeper/zookeeper-plus.md