个人简介

Echo Blog


江湖无名 安心练剑
  • ZooKeeper-21-ZooKeeper 的典型应用场景
    ZooKeeper的典型应用场景 在第5章中,我们已经向读者讲解了如何通过ZooKeeper的客户端来使用ZooKeeper。 从本章开始,我们将从实际的分布式应用场景出发,来讲解如何使用ZooKeeper去解决一些常见的分布式问题,以帮助读者更好地使用ZooKeeper。 ZooKeeper是一个典型的发布/订阅模式的分布式数据管理与协调框架,开发人员可以使用它来进行分布式数据的发布...
    2016-09-25 04:21:05 | Apache
  • ZooKeeper-20-内部原理
    ZooKeeper内部原理 本章与其他章节不同,本章不会讲解任何关于如何通过ZooKeeper构建⼀个应⽤程序相关的知识,主要是介绍ZooKeeper内部是如何运⾏的,通过从⾼层次介绍其所使⽤的协议,以及ZooKeeper所采⽤的在提供⾼性能的同时还具有容错能⼒的机制。这些内容⾮常重要,通过这些为⼤家提供了⼀个更深度的视⾓来分析为什么程序与ZooKeeper⼀同⼯作时会如此运⾏。如果你打算...
    2016-09-25 04:21:05 | Apache
  • ZooKeeper-19-api 使用
    ZK 的启动 具体参考 zk 入门 启动路径 $ pwd D:\tools\zookeeper\apache-zookeeper-3.6.2-bin\bin $ zkServer 启动日志如下: 2021-03-14 16:15:58,039 [myid:] - INFO [main:QuorumPeerConfig@174] - Reading configuration ...
    2016-09-25 04:21:05 | Apache
  • ZooKeeper-18-⼀个主-从模式例⼦的实现
    ⼀个主-从模式例⼦的实现 本节中我们通过zkCli⼯具来实现主-从⽰例的⼀些功能。 这个例⼦仅⽤于教学⽬的,我们不推荐使⽤zkCli⼯具来搭建系统。使⽤zkCli的⽬的仅仅是为了说明如何通过ZooKeeper来实现协作菜谱,从⽽撇开在实际实现中所需的⼤量细节。我们将在下⼀章中进⼊实现的细节。 角色 主-从模式的模型中包括三个⾓⾊: 主节点 主节点负责监视新的从节点和任务,...
    2016-09-25 04:21:05 | Apache
  • ZooKeeper-17-通过ZooKeeper实现分布式锁
    实现⼀个原语:通过ZooKeeper实现锁 关于ZooKeeper的功能,⼀个简单的例⼦就是通过锁来实现临界区域。 假设有⼀个应⽤由n个进程组成,这些进程尝试获取⼀个锁。再次强调,ZooKeeper并未直接暴露原语,因此我们使⽤ZooKeeper的接⼜来管理znode,以此来实现锁。为了获得⼀个锁,每个进程p尝试创建znode,名为/lock。如果进程p成功创建了znode,就表⽰它获得...
    2016-09-25 04:21:05 | Apache
  • ZooKeeper-16-qourum 仲裁模式
    ZooKeeper与仲裁模式 到⽬前为⽌,我们⼀直基于独⽴模式配置的服务器端。如果服务器启动,服务就启动了,但如果服务器故障,整个服务也因此⽽关闭。这⾮常不符合可靠的协作服务的承诺。出于可靠性,我们需要运⾏多个服务器。 配置文件 为了完成这些,我们将要使⽤以下配置⽂件: tickTime=2000 initLimit=10 syncLimit=5 dataDir=./data cli...
    2016-09-25 04:21:05 | Apache
  • ZooKeeper-15-了解 ZooKeeper 架构
    ZooKeeper架构 现在我们已经讨论了ZooKeeper暴露给应⽤的⾼层操作,我们需要详细了解服务实际上是如何运⾏的。应⽤通过客户端库来对ZooKeeper实现了调⽤。客户端库负责与ZooKeeper服务器端进⾏交互。 ZooKeeper仲裁 在仲裁模式下,ZooKeeper复制集群中的所有服务器的数据树。但如果让⼀个客户端等待每个服务器完成数据保存后再继续,延迟问题将⽆法接受...
    2016-09-25 04:21:05 | Apache
  • ZooKeeper-14-了解 ZooKeeper 基础知识
    了解ZooKeeper 前⼀章从较⾼的层⾯讨论了分布式应⽤的需求,同时也讨论了在协作⽅⾯的共性需求。 我们以实际应⽤中使⽤很⼴泛的主-从架构(master-worker)为例⼦,从中摘取了⼀些常⽤原语。本章将开始讨论ZooKeeper,看⼀看这个服务如何实现这些协作⽅⾯的原语。 ZooKeeper基础 很多⽤于协作的原语常常在很多应⽤之间共享,因此,设计⼀个⽤于协作需求的服务的⽅法往...
    2016-09-25 04:21:05 | Apache