万本电子书0元读

万本电子书0元读

顶部广告

分布式实时处理系统:原理、架构与实现电子书 租阅

售       价:¥

纸质售价:¥78.20购买纸书

234人正在读 | 2人评论 6.2

作       者:卢誉声

出  版  社:机械工业出版社

出版时间:2016-06-01

字       数:44.8万

所属分类: 科技 > 计算机/网络 > 计算机理论与教程

温馨提示:此类商品不支持退换货,不支持下载打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(1条)
  • 读书简介
  • 目录
  • 累计评论(1条)
多位大数据专家联袂推荐,Autodesk资深系统研发工程师撰写,参透大规模分布式实时处理系统。抽丝剥茧,从概念、原理到分布式实时计算框架实现,兼顾理论与实践,带领读者逐步实现一个高性能、基于C11的分布式实时处理系统Hurricane。 多位大数据专家联袂推荐,Autodesk资深系统研发工程师撰写,参透大规模分布式实时处理系统。抽丝剥茧,从概念、原理到分布式实时计算框架实现,兼顾理论与实践,带领读者逐步实现一个高性能、基于C 11的分布式实时处理系统Hurricane。 第1~5章,分布式实时处理基石。 这部分涵盖分布式系统原理与特性,分布式系统通信基础与高层抽象,C 11的高性能编程基础与阶(内存资源管理、编码解决方案、并发与异步处理、线 程模型等),以及Hadoop与Storm基本模型和可靠消息处理的基本思想。同时结合所讲知识带领读者发公告牌服务、留言板系统等,加深理解。 第6~11章,动手时间! 这部分是本书重,带领大家实现一个基于C 11的高性能分布式实时处理框架,对读者日后的框架理解、发与定制能力大有裨益。涵盖实时处理系统的总 体架构设计,实时处理系统中各口、服务组件、管理服务组件、可靠消息处理方案,以及底层数据传输层及高性能网络库Meshy(实现可靠的TCP/IP传 输和消息队列,提供底层网络传输基础)的设计与实现。 第12~14章,高级技能get! 这部分介绍一些实用的高级技能。涵盖事务性拓扑实现方案,多语言口与优化方案,以及高级抽象元语、DRPC的*佳实践。 第15~17章,用起来! 这部分给出了框架的应用案例,一步加强读者实践技能。涵盖基于Hurricane发的日志流处理实例、频繁二项集挖掘系统,以及在AWS和阿里云上部署Hurricane。
【推荐语】
  多位大数据专家联袂推荐,Autodesk资深系统研发工程师撰写,参透大规模分布式实时处理系统 抽丝剥茧,从概念、原理到分布式实时计算框架实现,兼顾理论与实践,带领读者逐步实现一个高性能、基于C 11的分布式实时处理系统
【作者】
卢誉声,Autodesk系统软件研发工程师,从事平台架构方面的研发工作。在此之前,他曾在思科系统(中国)研发中心云产品研发部工作多年,并参与了大 规模分布式系统的服务器后端、前端以及SDK的设计与研发工作,在分布式系统设计与实现、性能调优、高可用性和自动化等方面积累了丰富的敏捷实践与发经 验。他主要从事C/C 发工作,致力于高性能平台架构的研究与发。此外,对JavaScript、Lua以及移动发平台等也有一定研究。译有 《Storm实时数据处理》《高级C/C 编译技术》《JavaScript编程精解(原书第2版)》。
目录展开

本书赞誉

序一

序二

序三

前言

第1章 分布式计算概述

1.1 分布式概念

1.2 分布式计算及其原理

1.3 分布式系统特性

1.3.1 容错性

1.3.2 高可扩展性

1.3.3 开放性

1.3.4 并发处理能力

1.3.5 透明性

1.4 通用分布式计算系统

1.4.1 Apache Hadoop

1.4.2 Apache Spark

1.4.3 Apache Storm

1.5 分布式存储系统

1.5.1 分布式存储概念

1.5.2 分布式存储系统特点

1.5.3 分布式存储系统分类

1.5.4 常见分布式存储系统

1.6 本章小结

第2章 分布式系统通信基础

2.1 时代的浪潮

2.1.1 集中式通信网

2.1.2 去中心化

2.2 可靠的数据链路

2.2.1 数据分组

2.2.2 帧同步

2.2.3 差错控制

2.2.4 链路管理

2.2.5 问题与解决方案

2.3 分层架构

2.4 网络层

2.4.1 寻找路径

2.4.2 网络分层

2.4.3 TCP/IP概述

2.4.4 IP协议

2.5 传输层

2.5.1 数据自动分包

2.5.2 端到端的传输

2.5.3 数据的可靠传输

2.6 应用层

2.6.1 ping

2.6.2 telnet

2.6.3 OSPF

2.6.4 DNS

2.6.5 HTTP协议

2.7 基于消息协议的公告牌

2.7.1 需求描述

2.7.2 制定协议

2.8 分布式通信举例——MapReduce

2.9 本章小结

第3章 通信系统高层抽象

3.1 RPC介绍

3.2 RESTful

3.2.1 资源和表现层

3.2.2 状态转移

3.2.3 RESTful总结

3.3 消息队列

3.4 序列化

3.5 使用Thrift实现公告牌服务

3.5.1 Apache Thrift介绍

3.5.2 安装Apache Thrift

3.5.3 编写Thrift文件

3.5.4 实现服务器

3.5.5 实现客户端

3.6 本章小结

第4章 走进C++高性能编程

4.1 基于C++的留言板系统

4.1.1 基于Socket的通信

4.1.2 C++中的内存与资源管理

4.2 来自服务器的天书

4.2.1 编码

4.2.2 C++98的编码缺陷

4.2.3 C++11编码支持

4.3 繁忙的服务器

4.3.1 分身乏术

4.3.2 fork——分身术

4.3.3 进程间通信

4.3.4 轻量级分身——线程

4.3.5 C++11线程

4.3.6 竞争问题与解决方案

4.3.7 多线程优化

4.3.8 异步I/O

4.4 消失不见的内存

4.4.1 内存分配与内存碎片

4.4.2 tcmalloc

4.4.3 内存池

4.5 本章小结

第5章 分布式实时处理系统

5.1 Hadoop与MapReduce

5.1.1 HDFS

5.1.2 MapReduce模型

5.2 Storm实时处理系统

5.2.1 历史

5.2.2 计算模型

5.2.3 总体架构

5.2.4 Storm元数据

5.2.5 Storm与Hadoop比较

5.3 有保证的消息处理

5.3.1 完全处理与元组树

5.3.2 元组的唯一标识

5.3.3 确认和失败

5.3.4 高效实现

5.4 本章小结

第6章 实时处理系统编程接口设计

6.1 总体架构设计

6.1.1 Hurricane与Storm比较

6.1.2 总体架构

6.1.3 任务接口

6.2 消息源接口设计

6.3 消息处理器接口设计

6.4 数据收集器设计

6.5 元组接口设计

6.6 序列化接口设计

6.7 本章小结

第7章 服务组件设计与实现

7.1 Executor设计与实现

7.1.1 事件驱动的消息队列

7.1.2 动态装载技术

7.1.3 Executor实现

7.2 Task设计与实现

7.3 本章小结

第8章 管理服务设计与实现

8.1 President功能与设计

8.2 President实现

8.2.1 简单的网络通信实现

8.2.2 Topology装载实现

8.2.3 Manager管理调度实现

8.2.4 序列化实现

8.3 本章小结

第9章 实时处理系统编程接口实现

9.1 消息源接口实现

9.1.1 消息源执行器

9.1.2 WordCount实现实例

9.2 消息处理单元接口实现

9.2.1 消息处理单元执行器

9.2.2 事件处理

9.2.3 WordCount实现实例

9.3 数据收集器实现

9.3.1 分发策略

9.3.2 传输层实现

9.4 本章小结

第10章 可靠消息处理

10.1 基本概念

10.1.1 完全处理

10.1.2 失败与重发

10.2 接口设计

10.3 具体实现

10.3.1 简单实现

10.3.2 高效实现

10.4 本章小结

第11章 通信系统设计与实现

11.1 I/O多路复用方案解析

11.1.1 基本网络编程接口

11.1.2 非阻塞的服务器程序

11.1.3 使用select()接口的基于事件驱动的服务器模型

11.1.4 使用epoll实现异步事件通知模型

11.2 基础工具

11.2.1 线程工具

11.2.2 日志工具

11.3 传输层实现

11.3.1 Reactor模式

11.3.2 定义抽象TP传输层

11.3.3 实现基于epoll的TP传输层

11.3.4 实现基于IOCP的TP传输层

11.4 应用层HTTP实现

11.4.1 HttpContext

11.4.2 HttpRequest

11.4.3 HttpResponse

11.4.4 HttpConnection

11.4.5 HttpServer

11.4.6 总结

11.5 跨平台分割编译

11.5.1 Makefile

11.5.2 Kake

11.6 与实时处理系统集成

11.6.1 修改NetListener

11.6.2 修改NetConnector

11.7 本章小结

第12章 事务性Topology实现

12.1 Exact-once语义解决方案

12.2 设计细节

12.2.1 构造事务性Topology

12.2.2 消息处理单元

12.3 事务性Topology API

12.3.1 消息处理单元

12.3.2 事务性消息源

12.4 本章小结

第13章 多语言接口

13.1 C语言通用接口

13.1.1 元组接口

13.1.2 消息源接口

13.1.3 消息处理单元接口

13.1.4 计算拓扑接口

13.2 Python接口

13.2.1 ctypes

13.2.2 元组接口

13.2.3 消息源接口

13.2.4 消息处理单元接口

13.2.5 计算拓扑接口

13.2.6 应用示例

13.3 JavaScript接口

13.3.1 V8引擎

13.3.2 Node.js

13.3.3 V8的互操作接口

13.3.4 任务接口

13.3.5 消息源接口

13.3.6 消息处理单元接口

13.3.7 计算拓扑接口

13.3.8 应用示例

13.4 Java接口

13.4.1 任务接口

13.4.2 消息源接口

13.4.3 消息处理单元接口

13.4.4 计算拓扑接口

13.4.5 本地代码

13.4.6 应用示例

13.5 Swift接口

13.5.1 应用范围

13.5.2 任务接口

13.5.3 消息源接口

13.5.4 消息处理单元接口

13.5.5 计算拓扑接口

13.6 本章小结

第14章 Squared设计与实现——实现高级抽象元语

14.1 Storm Trident介绍

14.1.1 Squared示例

14.1.2 DRPC示例

14.2 Squared实现

14.2.1 SquaredTopology和Spout

14.2.2 SquaredBolt

14.2.3 Stream

14.2.4 状态存储

14.2.5 DRPC实现

14.2.6 操作与处理节点

14.2.7 流操作

14.3 本章小结

第15章 实战:日志流处理

15.1 日志流处理设计方案

15.2 实现Topology

15.2.1 编写消息源

15.2.2 编写索引消息处理单元

15.2.3 编写统计消息处理单元

15.3 本章小结

第16章 实战:频繁组合查找

16.1 背景介绍

16.1.1 数据挖掘概念

16.1.2 关联规则和频繁项集

16.1.3 啤酒与尿布

16.2 频繁二项集挖掘方法

16.2.1 频繁二项集

16.2.2 算法设计思路

16.2.3 Hurricane实现思路

16.3 编写Spout

16.4 编写Bolt

16.4.1 SplitBolt

16.4.2 PairCountBolt

16.4.3 PairTotalCountBolt

16.4.4 ConfidenceComputeBolt

16.4.5 SupportComputeBolt

16.4.6 FilterBolt

16.5 编写Topology

16.6 本章小结

第17章 实战:在AWS和阿里云上部署Hurricane实时处理系统

17.1 AWS部署

17.1.1 搭建虚拟私有云

17.1.2 配置安全组

17.1.3 加载EC2实例

17.1.4 弹性IP地址管理

17.2 阿里云部署

17.2.1 创建虚拟私有云

17.2.2 管理安全组

17.2.3 创建ECS

17.2.4 SSH登录

17.3 Hurricane分布式部署与管理

17.3.1 分布式部署原理

17.3.2 分布式安装配置

17.3.3 分布式启动

17.4 部署分布式实时处理系统

17.5 未来之路

17.6 本章小结

累计评论(1条) 1个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部