zookeeperr(分布式应用程序协调服务)

大小:22.38M 类别:
  • 编程其它

官方安全无插件纠错

  • 更新时间2024-04-16
  • 版本v3.9.2
  • 系统Pc
  • 语言简体中文
zookeeper是一个开源的分布式应用程序协调服务,是Google的chubby一个开源的实现,是Hadoop和Hbase的重要组成部件。除了能够为用户的分布式应用提供一致性的服务,还能够进行配置维护、域名服务、分布式同步等等功能,对于开发人员来说,这款软件是一个非常高效可靠的服务软件。zookeeper的目标是为了封装好复杂易出错的关键服务,将简单易用的借口和性能高效、功能稳定的系统提供给用户,软件拥有两个接口,Java和C语言,也就是说目前还是只有这两个开发语言的用户使用的较多。

zookeeper安装

1、下载完最新zookeeper 3.9.1稳定版本后,解压下载的压缩包。
如下图所示:

2、解压后进入conf文件夹下面,把zoo_sample.cfg复制一份并改名为zoo.cfg。
如下图所示:

备注:zoo.cfg是zookeeper配置文件入口,必须修改为zoo.cfg.
3、在根目录下新建一个data文件夹和一个log文件夹,分别存储数据和日志。

4、进入conf文件夹下面,修改zoo.cfg配置文件,把dataDir=/tmp/zookeeper修改成zookeeper安装目录所在的data文件夹,以及dataLogDir修改为log文件夹。
如下图所示:

zookeeper启动流程

启动zookeeper服务端
进入bin文件夹,双击点击zkServer.cmd启动zookeeper。
如下图所示:

控制台显示:

启动zookeeper客户端
双击zkCli.cmd启动客户端,出现:

表示启动成功了。

zookeeper原理

1、选举Leader。
2、同步数据。
3、选举Leader过程中算法有很多,但要达到的选举标准是一致的。
4、Leader要具有最高的zxid。
5、集群中大多数的机器得到响应并follow选出的Leader。

软件特点

在Zookeeper中,znode是一个跟Unix文件系统路径相似的节点,可以往这个节点存储或获取数据。如果在创建znode时Flag设置为EPHEMERAL,那么当创建这个znode的节点和Zookeeper失去连接后,这个znode将不再存在在Zookeeper里,Zookeeper使用Watcher察觉事件信息。当客户端接收到事件信息,比如连接超时、节点数据改变、子节点改变,可以调用相应的行为来处理数据。Zookeeper的Wiki页面展示了如何使用Zookeeper来处理事件通知,队列,优先队列,锁,共享锁,可撤销的共享锁,两阶段提交。
那么Zookeeper能做什么事情呢,简单的例子:假设我们有20个搜索引擎的服务器(每个负责总索引中的一部分的搜索任务)和一个总服务器(负责向这20个搜索引擎的服务器发出搜索请求并合并结果集),一个备用的总服务器(负责当总服务器宕机时替换总服务器),一个web的cgi(向总服务器发出搜索请求)。搜索引擎的服务器中的15个服务器提供搜索服务,5个服务器正在生成索引。这20个搜索引擎的服务器经常要让正在提供搜索服务的服务器停止提供服务开始生成索引,或生成索引的服务器已经把索引生成完成可以提供搜索服务了。使用Zookeeper可以保证总服务器自动感知有多少提供搜索引擎的服务器并向这些服务器发出搜索请求,当总服务器宕机时自动启用备用的总服务器。

展开内容

类似软件

  • Android逆向助手官方版

    9.6/15.2M

    安卓应用逆向分析与调试工具

    查看
  • Cygwin(UNIX环境模拟软件)

    9.6/1.31M

    Cygwin是一款可以让用户在windows系统中使用Unix代码的模拟环境软件,软件由UNIX API库、Bash shell和许多UNIX程序组成,可以帮助初次学习LINUX的用户避免两个系统之间来回切换的麻烦。

    查看
  • Apkdb反编译工具

    9.5/65.68M

    APK文件反编译与资源提取工具

    查看
  • 代码统计工具中文版

    9.1/2.47M

    代码统计工具中文版是一款专业实用的代码统计工具,专门用于统计大量的代码数量。软件主要支持对C++、VB.Net、VB、C#、JAVA等30多种代码格式进行统计,也支持将统计结果以CSV或HTML文件格式进行保存。

    查看

网友评论

0人参与,0条评论
  • 评论需审核后才能显示

同类排行

  • Apkdb反编译工具

    9.5/65.68M

    APK文件反编译与资源提取工具

    查看
  • .Net6.0离线完整安装包

    8.5/181.67M

    开发及运行.NET 6应用所需完整环境

    查看
  • memcached 64 windows

    9.0/372K

    分布式缓存系统工具

    查看
  • Flash Programmer(芯片烧录软件)

    10.0/50.38M

    Flash Programmer是一款用于编程和烧录微控制器芯片(如Arduino板上的ATmega系列芯片)的软件。它可以在Windows操作系统上运行,支持多种编程语言和多种芯片型号,具有简单易用、功能强大等特点。

    查看
  • Cygwin(UNIX环境模拟软件)

    9.6/1.31M

    Cygwin是一款可以让用户在windows系统中使用Unix代码的模拟环境软件,软件由UNIX API库、Bash shell和许多UNIX程序组成,可以帮助初次学习LINUX的用户避免两个系统之间来回切换的麻烦。

    查看
  • swix(SWF编辑器)

    9.1/625K

    swix是一款强大的SWF编辑工具,也是一款可调试、更新swf文件的XML编辑器。它可将SWF文件反编译为SWIX的XML格式,并支持全系列的Flash格式。swix 支持语法高亮,当用户代码输入错误的时候系统就会以很明显的色彩来通知用户。

    查看
  • Cnwizards(c++开发工具)

    9.0/25.57M

    CnWizards是CnPack项目组的主力产品之一,是一组集成在delphi/C++ builder中的一个工具用于增强集成开发环境的功能,提高IDE的可用性及开发效率的免费且开源的源码工具,如果用户本身的开发水平足够的话,还能够对这款工具进行修改,让用户能够更好的进行开发工作

    查看
  • Caffe Windows

    9.1/9.31M

    Caffe全称Convolutional Architecture for Fast Feature Embedding,Caffe是一个开源的深度学习框架,由伯克利人工智能研究实验室(BAIR)开发。

    查看
  • 超龙apk反编译专家

    9.4/6.48M

    安卓APK文件反编译与分析软件

    查看
  • YALMIP工具箱

    9.0/1.22M

    YALMIP官方版是一款用于求解线性规划、整数规划、非线性规划、混合规划的MATLAB工具箱,它允许用户以MATLAB语法的方式轻松构建和解决各种类型的优化问题,包括线性规划、整数规划、非线性规划和混合整数非线性规划等等!

    查看
  • jclasslib(Java代码查看工具)

    9.0/2.61M

    jclasslib电脑版是一款实用且开源的java字节码查看小工具,Java作为一门面向对象编程语言,被广泛使用,所以小编今天特意为广大编程人员带来了jclasslib电脑版,软件可以直接查看java字节码,让有利于你对代码的分析,不仅如此,jclasslib电脑版还可以允许开发

    查看
  • jquery api中文文档

    9.1/10.32M

    jquery api是一个专门对jQuery进行说明帮助的文档。也就是我们常常用到的“使用说明书”了。那么jquery是什么?首先jQuery里面的文档非常的丰富,主要是因为其轻量级的特性,所以里面的代码内容并不是很复杂,随着新版本的发布,很快就被翻译成了多国语言。

    查看
  • OpenGL ES 2.0库

    9.1/854K

    OpenGL ES 2.0是OpenGL三维图形API的子集,针对手机、PAD和游戏主机等嵌入式设备设计,而小编带来的OpenGL ES 2.0是其2.0版本,这一版本主要针对可编程管线硬件,参照OpenGL 2.0的规范定义的。

    查看
  • hudson war(持续集成工具)

    9.0/29.82M

    hudson电脑版是一款非常做持续集成必不可少的工具,是现在著名的Jenkins的前身,主要用来让我们的用户持续、自动的构建项目还能够构建自动化测试项目,软件基于java开发,能够用于监控程序的重复工作,同时hudson电脑版也是一款开源软件项目,能够为用户提供一个开放易用的软件

    查看
  • doxygen(帮助文档生成器)

    9.0/44.94M

    doxygen是一个程序的文档产生工具,以类似JavaDoc风格描述的文档系统,目前Doxygen可处理的程序语言包含C、C++、Java、Objective-C和IDL语言,部分支持PHP、C#。

    查看