《大规模分布式系统架构与设计实战》

《大规模分布式系统架构与设计实战》

基本信息

作者: 彭渊   

丛书名: 大数据技术丛书

出版社:机械工业出版社

ISBN:9787111455035

上架时间:2014-2-21

出版日期:2014 年2月

开本:16开

页码:1

版次:1-1

所属分类:计算机 > 操作系统 > 操作系统理论 > 分布式操作系统

 

更多关于》》》《大规模分布式系统架构与设计实战》

 

内容简介

    书籍

    计算机书籍

  《大规模分布式系统架构与设计实战》是作者从程序员到首席架构师十多年职业生涯的实战经验总结,系统讲解构建大规模分布式系统的核心技术与实现方法,包含作者开源的fourinone系统的设计与实现过程,手把手教你掌握分布式技术。通过学习这个系统的实现方法与相关的理论,读者可快速掌握分布式系统的理论并设计自己的分布式系统。

  《大规模分布式系统架构与设计实战》从分布式计算的基本概念开始,解剖了众多流行概念的本质,深入讲解分布式系统的基本原理与实现方式,包括master-slave结构、消息中枢模式、网状直接交互模式、并行结合串行模式等,以及fourinone系统的架构、实现分布式功能的示例。接下来详细介绍分布式协调、分布式缓存、消息队列、分布式文件系统、分布式作业调度平台的设计与实现方法,不仅包括详细的架构原理、算法,还给出了实现步骤、核心api、实现代码。随书附带的光盘包括书中示例代码以及fourinone系统源代码。

 

 

目录

《大规模分布式系统架构与设计实战》

前 言

第1章 概述 1

1.1 分布式计算、并行计算、云计算概述 1

1.2 分布式产品hadoop、zookeeper、hbase概述 6

1.3 fourinone的产生背景 12

第2章 分布式并行计算的原理与实践 14

2.1 分布式并行计算模式 14

2.1.1 最初想到的master-slave结构 14

2.1.2 “包工头-职介所-手工仓库-工人”模式 15

2.1.3 基于消息中枢的计算模式 17

2.1.4 基于网状直接交互的计算模式 18

2.1.5 并行结合串行模式 22

2.1.6 包工头内部批量多阶段处理模式 23

2.1.7 计算集群模式和兼容遗留计算系统 24

2.1.8 工人计算的服务化模式 26

2.2 跟hadoop的区别 28

2.3 关于分布式的一些概念与产品 30

2.4 配置文件和核心api介绍 35

2.5 实践与应用 36

2.5.1 一个简单的示例 36

2.5.2 工头工人计算模式更完整的示例 39

2.5.3 工人合并互相say hello的示例 44

2.5.4 实现hadoop经典实例word count 48

2.5.5 分布式多机部署的示例 52

2.5.6 分布式计算自动部署的示例 53

2.5.7 计算过程中的故障和容灾处理 57

2.5.8 计算过程中的相关时间属性设置 60

2.5.9 如何在一台计算机上一次性启动多个进程 63

2.5.10 如何调用c/c++程序实现 68

2.5.11 如何中止工人计算和超时中止 68

2.5.12 使用并行计算大幅提升递归算法效率 73

2.5.13 使用并行计算求圆周率π 81

2.5.14 从赌钱游戏看pagerank算法 86

2.5.15 使用并行计算实现上亿排序 96

2.5.16 工人服务化模式应用示例 104

2.6 实时流计算 107

第3章 分布式协调的实现 111

3.1 协调架构原理简介 111

3.2 核心api 113

3.3 权限机制 115

3.4 相对于zookeeper的区别 116

3.5 与paxos算法的区别 117

3.6 实践与应用 119

3.6.1 如何实现公共配置管理 119

3.6.2 如何实现分布式锁 126

3.6.3 如何实现集群管理 129

3.6.4 多节点权限操作示例 134

3.6.5 领导者选举相关属性设置 137

第4章 分布式缓存的实现 139

4.1 小型网站或企业应用的缓存实现架构 139

4.2 大型分布式缓存系统实现过程 140

4.3 一致性哈希算法的原理、改进和实现 147

4.4 解决任意扩容的问题 152

4.5 解决扩容后数据均匀的问题 153

4.6 分布式session的架构设计和实现 154

4.7 缓存容量的相关属性设置 156

4.8 缓存清空的相关属性设置 158

第5章 消息队列的实现 162

5.1 闲话中间件与mq 162

5.2 jms的两种经典模式 163

5.3 如何实现发送接收的队列模式 164

5.4 如何实现主题订阅模式 168

第6章 分布式文件系统的实现 173

6.1 fttp架构原理解析 174

6.2 搭建配置fttpadapter环境 177

6.3 访问集群文件根目录 179

6.4 访问和操作远程文件 181

6.5 集群内文件复制和并行复制 184

6.6 读写远程文件 187

6.7 解析远程文件 189

6.8 并行读写远程文件 191

6.9 批量并行读写远程文件和事务补偿处理 194

6.10 如何进行整型读写 198

6.11 基于整型读写的上亿排序 205

第7章 分布式作业调度平台的实现 219

7.1 调度平台的设计与实现 219

7.2 资源隔离的实现 224

7.3 资源调度算法 226

7.4 其他作业调度平台简介 227

7.4.1 其他mpi作业资源调度技术 227

7.4.2 mesos和yarn简介 229

 

本图书信息来源:互动出版

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/276187.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WINDOWS下的squid

今天写这篇教程目的在于分享自己在WINDOWS主机下配置squid的方法。哪些地方写的不完善或是不完整或是需要修改的地方,大家可以提出。我会第一时间纠正。下面看正文部分。先提条件,您预安装配置squid的这台计算机必须是联入网络的,系统版本是w…

Spring Batch 批量处理策略

为了帮助设计和实现批量处理系统,基本的批量应用是通过块和模式来构建的,同时也应该能够为程序开发人员和设计人员提供结构的样例和基础的批量处理程序。当你开始设计一个批量作业任务的时候,商业逻辑应该被拆分一系列的步骤,而这…

如何从零开始开发一个 Chrome 插件?

什么是浏览器插件?简单来说浏览器插件,是浏览器上的一种工具,可以提供一些浏览器没有的功能,帮你做一些有趣的事情。开发者可以根据自己的喜欢,去实现一些功能。插件基于Web技术(html、css、js)…

轉Excel的一種簡單方法

写了这么久的程序﹐越来越喜欢那种简单的解决方法﹐这段时间在做一个报表系统﹐其中有需要转Excel﹐而且要求兼容openoffice﹐遂利用asp语法,asp.net的控件封装特性以及excel 2003的xml试算清格式做了一个看起来比较"清爽"的excel转档方案。一.开始原理很简单﹐excel…

总结:自学前端的高效学习路线

提到前端,大多数人都会想到薪资高。也正因为如此,很多人想要从事前端开发这个岗位,也由此衍生出来一个问题:为什么前端工程师供不应求,但还是有很多学前端的人找不到工作?其实行业不是缺前端工程师&#xf…

vmware创建虚拟机不识别网卡

今天在给虚拟机添加网卡的时候,出现了虚拟机不识别新加的网卡,很纳闷,连的一样的端口组,为什么新加的网卡识别不了呢 然后查看pci设备,发现网卡的驱动为 AMD 79C970 PCnet32- LANCE 然后都vc上查看,果真驱动…

周末包邮送书和小红包中奖名单公布

大家好,我是若川。周末送福利,给大家送红包、包邮送新书!这篇文章中,准备了3本自选前端新书,10个2元小红包,在看抽10人每人5元红包,2月28日晚8点开奖。现将名单公布如下:在看抽奖&am…

python treeview底部加个按钮_Python爬取京东商品信息(GUI版本)

前言本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。作者:DYblog转载:https://www.cnblogs.com/dy8888/p/13257918.htmlPS:如有需要Python学习资料的小伙伴可以加点击…

jmeter学习指南之聚合报告

jmeter视频地址:https://edu.51cto.com/course/14305.html 上一篇文章中我们讲了Jmeter结果分析最常用的一个Listener查看结果树,今天接着讲另一个最常用的listener--聚合报告Aggregate Report。我们先来看看聚合报告中的主要名称的含意:Labe…

2021 整理的最全学习资源,送给每一个努力着的人

时间来到了 2021 年,新的一年有新的期待,而我亦有新的祝福如果说在过去的一年,经历太多,心酸、迷茫、焦虑、幸福、喜悦那么在 2021 年,希望你可以去过一种遇见自己的生活,恬淡、热情,喜欢自己而…

Chrome OS 设备或将允许用户自行选择 Linux 发行版

百度智能云 云生态狂欢季 热门云产品1折起>>> 谷歌去年宣布在 Chrome OS 上支持运行 Linux 应用,前不久又有消息称其将为运行这些 Linux 应用提供 GPU 加速支持,而现在,Chrome OS 似乎将在 Linux 的方向上更进一步,让 …

博文视点 OpenParty第11期:世界黑客大会那些事

博文视点 OpenParty第11期:世界黑客大会那些事 亲爱的读者朋友: 您好! 2009年,博文视点Open Party共举办8场,累计到场2000人次,影响力辐射近5000人次,真正实现了博文视点Open Party的初…

我从 Vuejs 中学到了什么——框架设计学问

框架设计远没有大家想的那么简单,并不是说只把功能开发完成,能用就算完事儿了,这里面还是有很多学问的。比如说,我们的框架应该给用户提供哪些构建产物?产物的模块格式如何?当用户没有以预期的方式使用框架…

CSS制作的32种图形效果[梯形|三角|椭圆|平行四边形|菱形|四分之一圆|旗帜]

转载链接:http://www.w3cplus.com/css/css-simple-shapes-cheat-sheet 前面在《纯CSS制作的图形效果》一文中介绍了十六种CSS画各种不同图形的方法。今天花了点时间将这方面的制作成一份清单,方便大家急用时有地方可查。别的不多说了,直接看代…

yaml加配置文件后起不来_YAML配置文件管理资源

YAML是配置文件的格式,YAML文件中是由一些易读的字段和指令组成的。K8S使用YAML配置文件需要注意如下事项。定义配置时,指定最新稳定版API(当前最新稳定版是v1版本)。最新版本的API可以通过kubectl api-versions命令进行查看,命令如下所示。前…

html5/css3响应式布局介绍

转载链接:http://www.51xuediannao.com/htmlcss/htmlcssjq/694.html html5/css3响应式布局介绍 html5/css3响应式布局介绍及设计流程,利用css3的media query媒体查询功能。移动终端一般都是对css3支持比较好的高级浏览器不需要考虑响应式布局的媒体查询…

MobX 上手指南,写 Vue 的感觉?

之前用 Redux 比较多,一直听说 Mobx 能让你体验到在 React 里面写 Vue 的感觉,今天打算尝试下 Mobx 是不是真的有写 Vue 的感觉。题外话在介绍 MobX 的用法之前,先说点题外话,我们可以看一下 MobX 的中文简介。在 MobX 的中文网站…

ansible中yaml语法应用

4、yaml语法应用 ansible的playbook编写是yaml语言编写,掌握yaml语法是编写playbook的必要条件,格式要求和Python相似,具体教程参考如下yaml语言教程 附上一个yaml文件转js格式文件链接在线免费yaml内容转json格式 4.1、 ansible中的yaml语法…

(送书和红包)快人一步,掌握前端函数式编程

大家好,我是若川。上周末送出了3本新书和若干红包,抽奖名单已公布。本周又争取到了4本《前端函数式编程》书籍包邮送给大家,抽奖规则见文末,与以往不同的是除了关键词、留言、在看抽奖外,还有最早关注奖,欢…

JavaScript操作表格进行拖拽排序

<js-dodo-table- Drag and Drop JQuery plugin>以上插件可对table进行排序&#xff0c;拖动&#xff01; 例如有下面一个样子的id为table的表格&#xff1a; <table id"table"cellspacing"0"cellpadding"2"><tr id"1"…