简介《大规模分布式系统架构与设计实战》从作者的实战经验出发,深入浅出地讲解了如何建立一个Hadoop那样的分布式系统,实现对多台计算机CPU、内存、硬盘的统一利用,从而获取强大计算能力去解决复杂问题。一般互联网企业的分布式存储计算系统都是个大平台,系统复杂、代码庞大,而且只适合公司的业务,工程师很难下载安装到自己的电脑里学习和吃透。本书对分布式核心技术进行了大量归纳和总结,并从中抽取出一套简化的框架和编程API进行讲解,方便工程师了解分布式系统的主要技术实现。这不是一本空谈概念、四处摘抄的书,这本书包含了大量精炼示例,手把手教你掌握分布式核心技术。本书主要内容分布式并行计算的基本原理解剖;分布式协调的实现,包括如何实现公共配置管理,如何实现分布式锁,如何实现集群管理等;分布式缓存的实现,包括如何提供完整的分布式缓存来利用多机内存能力;消息队列的实现,包括如何实现发送和接收模式;分布式文件系统的实现,包括如何像操作本地文件一样操作远程文件,并利用多机硬盘存储能力;分布式作业调度平台的实现,包括资源隔离、资源调度等。目录第1章概述1.1分布式计算、并行计算、云计算概述1.2分布式产品Hadoop、ZooKeeper、HBase概述1.3Fourinone的产生背景第2章分布式并行计算的原理与实践2.1分布式并行计算模式2.1.1最初想到的master-slave结构2.1.2“包工头-职介所-手工仓库-工人”模式2.1.3基于消息中枢的计算模式2.1.4基于网状直接交互的计算模式2.1.5并行结合串行模式2.1.6包工头内部批量多阶段处理模式2.1.7计算集群模式和兼容遗留计算系统2.1.8工人计算的服务化模式2.2跟Hadoop的区别2.3关于分布式的一些概念与产品2.4配置文件和核心API介绍2.5实践与应用2.5.1一个简单的示例2.5.2工头工人计算模式更完整的示例2.5.3工人合并互相sayhello的示例2.5.4实现Hadoop经典实例WordCount2.5.5分布式多机部署的示例2.5.6分布式计算自动部署的示例2.5.7计算过程中的故障和容灾处理2.5.8计算过程中的相关时间属性设置2.5.9如何在一台计算机上一次性启动多个进程2.5.10如何调用C/C++程序实现2.5.11如何中止工人计算和超时中止2.5.12使用并行计算大幅提升递归算法效率2.5.13使用并行计算求圆周率π2.5.14从赌钱游戏看PageRank算法2.5.15使用并行计算实现上亿排序2.5.16工人服务化模式应用示例2.6实时流计算第3章分布式协调的实现3.1协调架构原理简介3.2核心API3.3权限机制3.4相对于ZooKeeper的区别3.5与Paxos算法的区别3.6实践与应用3.6.1如何实现公共配置管理3.6.2如何实现分布式锁3.6.3如何实现集群管理3.6.4多节点权限操作示例3.6.5领导者选举相关属性设置第4章分布式缓存的实现4.1小型网站或企业应用的缓存实现架构4.2大型分布式缓存系统实现过程4.3一致性哈希算法的原理、改进和实现4.4解决任意扩容的问题4.5解决扩容后数据均匀的问题4.6分布式Session的架构设计和实现4.7缓存容量的相关属性设置4.8缓存清空的相关属性设置第5章消息队列的实现5.1闲话中间件与MQ5.2JMS的两种经典模式5.3如何实现发送接收的队列模式5.4如何实现主题订阅模式第6章分布式文件系统的实现6.1FTTP架构原理解析6.2搭建配置FttpAdapter环境6.3访问集群文件根目录6.4访问和操作远程文件6.5集群内文件复制和并行复制6.6读写远程文件6.7解析远程文件6.8并行读写远程文件6.9批量并行读写远程文件和事务补偿处理6.10如何进行整型读写6.11基于整型读写的上亿排序第7章分布式作业调度平台的实现7.1调度平台的设计与实现7.2资源隔离的实现7.3资源调度算法7.4其他作业调度平台简介7.4.1其他MPI作业资源调度技术7.4.2Mesos和Yarn简介