kindle电子书

资源下载,尽在我的书库!
首页 > kindle电子书库 > 工业|计算机|互联网 > 电子、计算机、网络

ZooKeeper:分布式过程协同技术详解 (O’Reilly精品图书系列)

  • 作者: 多作者
  • 体积:2.50 MB
  • 语言:中文
  • 日期:2018-06-16
  • 推荐:

简介:ZooKeeper:分布式过程协同技术详解 (O’Reilly精品图书系列)

电子书详细介绍

 ZooKeeper是Google的Chubby项目的开源实现,它曾经作为Hadoop的子项目,在大数据领域得到广泛应用。ZooKeeper以Fast Paxos算法为基础,同时为了解决活锁问题,对Fast Paxos算法进行了优化,因此也可以广泛用于大数据之外的其他分布式系统,为大型分布式系统提供可靠的协作处理功能。比如小米公司的米聊,其后台就采用了ZooKeeper作为分布式服务的统一协作系统。而阿里公司的开发人员也广泛使用ZooKeeper,并对其进行了适当修改,开源了一款TaoKeeper软件,以适应自身业务需要。本书首先从分布式系统的基本概念入手,然后介绍实际开发编程的接口和技巧,最后谈及运维人员所关心的配置维护知识。翻译过程中,译者对原版书籍通读一遍,对ZooKeeper又有了新的认识和理解,获得了分布式应用构建中需要注意的很多细节,这本书可谓是实际开发和维护中的一本最佳参考书籍。对于这么优秀的一本书,翻译时译者惶恐于译文对读者理解的影响,尽最大努力保持原文意思,以便读者真正能够领悟ZooKeeper的精髓。

编辑推荐

《ZooKeeper:分布式过程协同技术详解》由机械工业出版社出版。

作者简介

作者介绍Flavio Junqueira 是微软研究院在英国剑桥大学的研究人员之一。他拥有美国加州大学圣地亚哥分校计算机科学博士学位。他的研究范围涉及分布式系统的各个方面,包括分布式算法、并发性和可扩展性。他是Apache项目如Apache ZooKeeper(PMC主席和提交者)和Apache BookKeeper(提交者)的积极贡献者。他一有空就喜欢睡觉。 
Benjamin Reed 是一位负责Facebook中所有细节工作的软件工程师。他以前的职位包括雅虎研究院首席研究科学家(负责所有大的方向)和IBM Almaden Research的研究人员(负责所有事情,无论大小)。他拥有加州大学圣克鲁斯分校计算机科学博士学位。他从事的工作涉及分布式计算、大数据处理、分布式存储、系统管理和嵌入式框架等领域。他参加了各种开源项目,如Hadoop和Linux操作系统等。他帮助启动了由Apache软件基金会主办的项目如Pig、ZooKeeper和BookKeeper。 

目录

前言1 
第一部分ZooKeeper的概念和基础 
第1章简介7 
1.1ZooKeeper的使命8 
1.1.1ZooKeeper改变了什么10 
1.1.2ZooKeeper不适用的场景10 
1.1.3关于Apache项目11 
1.1.4通过ZooKeeper构建分布式系统11 
1.2示例:主—从应用12 
1.2.1主节点失效13 
1.2.2从节点失效14 
1.2.3通信故障14 
1.2.4任务总结15 
1.3分布式协作的难点16 
1.4ZooKeeper的成功和注意事项18 
第2章了解ZooKeeper19 
2.1ZooKeeper基础19 
2.1.1API概述20 
2.1.2znode的不同类型21 
2.1.3监视与通知22 
2.1.4版本24 
2.2ZooKeeper架构25 
2.2.1ZooKeeper仲裁26 
2.2.2会话27 
2.3开始使用ZooKeeper28 
2.3.1第一个ZooKeeper会话28 
2.3.2会话的状态和声明周期31 
2.3.3ZooKeeper与仲裁模式33 
2.3.4实现一个原语:通过ZooKeeper实现锁36 
2.4一个主—从模式例子的实现37 
2.4.1主节点角色37 
2.4.2从节点、任务和分配40 
2.4.3从节点角色40 
2.4.4客户端角色41 
2.5小结43 
第二部分使用ZooKeeper进行开发 
第3章开始使用ZooKeeper的API47 
3.1设置ZooKeeper的CLASSPATH47 
3.2建立ZooKeeper会话47 
3.2.1实现一个Watcher49 
3.2.2运行Watcher的示例51 
3.3获取管理权53 
3.3.1异步获取管理权57 
3.3.2设置元数据60 
3.4注册从节点62 
3.5任务队列化65 
3.6管理客户端66 
3.7小结68 
第4章处理状态变化70 
4.1单次触发器71 
4.2如何设置监视点72 
4.3普遍模型73 
4.4主—从模式的例子74 
4.4.1管理权变化74 
4.4.2主节点等待从节点列表的变化77 
4.4.3主节点等待新任务进行分配80 
4.4.4从节点等待分配新任务83 
4.4.5客户端等待任务的执行结果86 
4.5另一种调用方式:Multiop88 
4.6通过监视点代替显式缓存管理90 
4.7顺序的保障91 
4.7.1写操作的顺序91 
4.7.2读操作的顺序91 
4.7.3通知的顺序92 
4.8监视点的羊群效应和可扩展性93 
4.9小结94 
第5章故障处理96 
5.1可恢复的故障98 
5.2不可恢复的故障102 
5.3群首选举和外部资源103 
5.4小结106 
第6章ZooKeeper注意事项107 
6.1使用ACL107 
6.1.1内置的鉴权模式108 
6.1.2SASL和Kerberos111 
6.1.3增加新鉴权模式111 
6.2恢复会话111 
6.3当znode节点重新创建时,重置版本号112 
6.4sync方法112 
6.5顺序性保障114 
6.5.1连接丢失时的顺序性114 
6.5.2同步API和多线程的顺序性115 
6.5.3同步和异步混合调用的顺序性115 
6.6数据字段和子节点的限制116 
6.7嵌入式ZooKeeper服务器116 
6.8小结117 
第7章C语言客户端118 
7.1配置开发环境118 
7.2开始会话119 
7.3引导主节点121 
7.4行使管理权126 
7.5任务分配129 
7.6单线程与多线程客户端132 
7.7小结135 
第8章Curator:ZooKeeperAPI的高级封装库136 
8.1Curator客户端程序136 
8.2流畅式API137 
8.3监听器138 
8.4Curator中状态的转换140 
8.5两种边界情况141 
8.6菜谱141 
8.6.1群首闩142 
8.6.2群首选举器143 
8.6.3子节点缓存器146 
8.7小结148 
第三部分ZooKeeper的管理 
第9章ZooKeeper内部原理151 
9.1请求、事务和标识符152 
9.2群首选举153 
9.3Zab:状态更新的广播协议157 
9.4观察者161 
9.5服务器的构成162 
9.5.1独立服务器163 
9.5.2群首服务器164 
9.5.3追随者和观察者服务器165 
9.6本地存储166 
9.6.1日志和磁盘的使用166 
9.6.2快照167 
9.7服务器与会话169 
9.8服务器与监视点170 
9.9客户端170 
9.10序列化171 
9.11小结171 
第10章运行ZooKeeper173 
10.1配置ZooKeeper服务器174 
10.1.1基本配置175 
10.1.2存储配置175 
10.1.3网络配置177 
10.1.4集群配置179 
10.1.5认证和授权选项181 
10.1.6非安全配置182 
10.1.7日志183 
10.1.8专用资源185 
10.2配置ZooKeeper集群185 
10.2.1多数原则186 
10.2.2法定人数的可配置性186 
10.2.3观察者188 
10.3重配置188 
10.4配额管理194 
10.5多租赁配置196 
10.6文件系统布局和格式197 
10.6.1事务日志198 
10.6.2快照199 
10.6.3时间戳文件200 
10.6.4已保存的ZooKeeper数据的应用200 
10.7四字母命令201 
10.8通过JMX进行监控202 
10.9工具209 
10.10小结209

我来说两句

本书评论

共有 0 条评论
图书分类
我的书库手机端
帮助中心
会员登录 ×
新用户注册 ×