日本免费精品视频,男人的天堂在线免费视频,成人久久久精品乱码一区二区三区,高清成人爽a毛片免费网站

在線客服
分布式實時處理系統:原理、架構與實現圖書
人氣:48

分布式實時處理系統:原理、架構與實現

多位大數據專家聯袂推薦,Autodesk博學系統研發工程師撰寫,參透大規模分布式實時處理系統;從概念、原理到分布式實時計算框架實現,兼顧理論與實踐,逐步實現一個高性能、基于C++ 11的分布式實時處理
  • 所屬分類:圖書 >計算機/網絡>計算機理論  
  • 作者:[盧譽聲]
  • 產品參數:
  • 叢書名:大數據技術叢書
  • 國際刊號:9787111539964
  • 出版社:機械工業出版社
  • 出版時間:2016-06
  • 印刷時間:2016-06-01
  • 版次:1
  • 開本:16開
  • 頁數:--
  • 紙張:膠版紙
  • 包裝:平裝
  • 套裝:

內容簡介

多位大數據專家聯袂推薦,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系統軟件研發工程師,從事平臺架構方面的研發工作。在此之前,他曾在思科系統(中國)研發中心云產品研發部工作多年,并參與了大 規模分布式系統的服務器后端、前端以及SDK的設計與研發工作,在分布式系統設計與實現、性能調優、高可用性和自動化等方面積累了豐富的敏捷實踐與開發經 驗。他主要從事C/C 開發工作,致力于高性能平臺架構的研究與開發。此外,對JavaScript、Lua以及移動開發平臺等也有一定研究。譯有 《Storm實時數據處理》《高級C/C 編譯技術》《JavaScript編程精解(原書第2版)》。

目錄

本書贊譽 序一

序二

序三

前言

第1章分布式計算概述1

1.1分布式概念1

1.2分布式計算及其原理2

1.3分布式系統特性3

1.3.1容錯性3

1.3.2高可擴展性4

1.3.3開放性5

1.3.4并發處理能力5

1.3.5透明性6

1.4通用分布式計算系統6

1.4.1ApacheHadoop6

1.4.2ApacheSpark8

1.4.3ApacheStorm9

1.5分布式存儲系統10

1.5.1分布式存儲概念10

1.5.2分布式存儲系統特點12

1.5.3分布式存儲系統分類12

1.5.4常見分布式存儲系統13

1.6本章小結14

第2章分布式系統通信基礎15

2.1時代的浪潮15

2.1.1集中式通信網16

2.1.2去中心化16

2.2的數據鏈路17

2.2.1數據分組17

2.2.2幀同步18

2.2.3差錯控制18

2.2.4鏈路管理18

2.2.5問題與解決方案19

2.3分層架構19

2.4網絡層22

2.4.1尋找路徑22

2.4.2網絡分層23

2.4.3TCP/IP概述23

2.4.4IP協議24

2.5傳輸層30

2.5.1數據自動分包30

2.5.2端到端的傳輸30

2.5.3數據的傳輸30

2.6應用層35

2.6.1ping35

2.6.2telnet36

2.6.3OSPF36

2.6.4DNS36

2.6.5HTTP協議37

2.7基于消息協議的公告牌38

2.7.1需求描述38

2.7.2制定協議38

2.8分布式通信舉例——MapReduce39

2.9本章小結41

第3章通信系統高層抽象42

3.1RPC介紹42

3.2RESTful44

3.2.1資源和表現層45

3.2.2狀態轉移45

3.2.3RESTful總結46

3.3消息隊列46

3.4序列化49

3.5使用Thrift實現公告牌服務50

3.5.1ApacheThrift介紹51

3.5.2安裝ApacheThrift51

3.5.3編寫Thrift文件52

3.5.4實現服務器53

3.5.5實現客戶端54

3.6本章小結56

第4章走進C 高性能編程57

4.1基于C 的留言板系統58

4.1.1基于Socket的通信58

4.1.2C 中的內存與資源管理64

4.2來自服務器的天書69

4.2.1編碼69

4.2.2C 98的編碼缺陷72

4.2.3C 11編碼支持73

4.3繁忙的服務器75

4.3.1分身乏術75

4.3.2fork——分身術76

4.3.3進程間通信79

4.3.4輕量級分身——線程85

4.3.5C 11線程86

4.3.6競爭問題與解決方案88

4.3.7多線程優化95

4.3.8異步I/O99

4.4消失不見的內存105

4.4.1內存分配與內存碎片106

4.4.2tcmalloc108

4.4.3內存池110

4.5本章小結112

第5章分布式實時處理系統113

5.1Hadoop與MapReduce113

5.1.1HDFS114

5.1.2MapReduce模型115

5.2Storm實時處理系統129

5.2.1歷史129

5.2.2計算模型130

5.2.3總體架構133

5.2.4Storm元數據133

5.2.5Storm與Hadoop比較138

5.3有保障的消息處理139

5.3.1處理與元組樹139

5.3.2元組的標識139

5.3.3確認和失敗141

5.3.4高效實現143

5.4本章小結144

第6章實時處理系統編程接口設計145

6.1總體架構設計145

6.1.1Hurricane與Storm比較145

6.1.2總體架構146

6.1.3任務接口148

6.2消息源接口設計149

6.3消息處理器接口設計150

6.4數據收集器設計151

6.5元組接口設計154

6.6序列化接口設計160

6.7本章小結161

第7章服務組件設計與實現162

7.1Executor設計與實現162

7.1.1事件驅動的消息隊列162

7.1.2動態裝載技術167

7.1.3Executor實現169

7.2Task設計與實現171

7.3本章小結172

第8章管理服務設計與實現173

8.1President功能與設計173

8.2President實現174

8.2.1簡單的網絡通信實現175

8.2.2Topology裝載實現182

8.2.3Manager管理調度實現184

8.2.4序列化實現193

8.3本章小結198

第9章實時處理系統編程接口實現199

9.1消息源接口實現200

9.1.1消息源執行器200

9.1.2WordCount實現實例205

9.2消息處理單元接口實現207

9.2.1消息處理單元執行器207

9.2.2事件處理212

9.2.3WordCount實現實例215

9.3數據收集器實現218

9.3.1分發策略218

9.3.2傳輸層實現224

9.4本章小結226

第10章消息處理227

10.1基本概念227

10.1.1處理227

10.1.2失敗與重發229

10.2接口設計229

10.3具體實現233

10.3.1簡單實現233

10.3.2高效實現235

10.4本章小結237

第11章通信系統設計與實現238

11.1I/O多路復用方案解析239

11.1.1基本網絡編程接口239

11.1.2非阻塞的服務器程序241

11.1.3使用select()接口的基于事件驅動的服務器模型242

11.1.4使用epoll實現異步事件通知模型245

11.2基礎工具249

11.2.1線程工具250

11.2.2日志工具254

11.3傳輸層實現263

11.3.1Reactor模式263

11.3.2定義抽象TP傳輸層264

11.3.3實現基于epoll的TP傳輸層269

11.3.4實現基于IOCP的TP傳輸層290

11.4應用層HTTP實現307

11.4.1HttpContext307

11.4.2HttpRequest311

11.4.3HttpResponse313

11.4.4HttpConnection315

11.4.5HttpServer317

11.4.6總結319

11.5跨平臺分割編譯320

11.5.1Makefile320

11.5.2Kake323

11.6與實時處理系統集成325

11.6.1修改NetListener325

11.6.2修改NetConnector327

11.7本章小結330

第12章事務性Topology實現331

12.1Exact-once語義解決方案331

12.2設計細節333

12.2.1構造事務性Topology333

12.2.2消息處理單元334

12.3事務性TopologyAPI337

12.3.1消息處理單元337

12.3.2事務性消息源339

12.4本章小結339

第13章多語言接口340

13.1C語言通用接口340

13.1.1元組接口342

13.1.2消息源接口346

13.1.3消息處理單元接口349

13.1.4計算拓撲接口352

13.2Python接口354

13.2.1ctypes354

13.2.2元組接口356

13.2.3消息源接口359

13.2.4消息處理單元接口360

13.2.5計算拓撲接口361

13.2.6應用示例364

13.3JavaScript接口365

13.3.1V8引擎366

13.3.2Node.js366

13.3.3V8的互操作接口367

13.3.4任務接口368

13.3.5消息源接口369

13.3.6消息處理單元接口370

13.3.7計算拓撲接口371

13.3.8應用示例373

13.4Java接口375

13.4.1任務接口375

13.4.2消息源接口376

13.4.3消息處理單元接口377

13.4.4計算拓撲接口377

13.4.5本地代碼380

13.4.6應用示例382

13.5Swift接口384

13.5.1應用范圍385

13.5.2任務接口385

13.5.3消息源接口386

13.5.4消息處理單元接口387

13.5.5計算拓撲接口388

13.6本章小結390

第14章Squared設計與實現——實現高級抽象元語391

14.1StormTrident介紹391

14.1.1Squared示例391

14.1.2DRPC示例394

14.2Squared實現396

14.2.1SquaredTopology和Spout396

14.2.2SquaredBolt401

14.2.3Stream405

14.2.4狀態存儲410

14.2.5DRPC實現412

14.2.6操作與處理節點416

14.2.7流操作419

14.3本章小結423

第15章實戰:日志流處理425

15.1日志流處理設計方案425

15.2實現Topology427

15.2.1編寫消息源427

15.2.2編寫索引消息處理單元428

15.2.3編寫統計消息處理單元429

15.3本章小結431

第16章實戰:頻繁組合查找432

16.1背景介紹432

16.1.1數據挖掘概念432

16.1.2關聯規則和頻繁項集433

16.1.3啤酒與尿布435

16.2頻繁二項集挖掘方法435

16.2.1頻繁二項集435

16.2.2算法設計思路438

16.2.3Hurricane實現思路439

16.3編寫Spout439

16.4編寫Bolt441

16.4.1SplitBolt441

16.4.2PairCountBolt442

16.4.3PairTotalCountBolt443

16.4.4ConfidenceComputeBolt444

16.4.5SupportComputeBolt445

16.4.6FilterBolt447

16.5編寫Topology448

16.6本章小結449

第17章實戰:在AWS和阿里云上部署Hurricane實時處理系統450

17.1AWS部署450

17.1.1搭建虛擬私有云452

17.1.2配置安全組455

17.1.3加載EC2實例456

17.1.4彈性IP地址管理461

17.2阿里云部署464

17.2.1創建虛擬私有云464

17.2.2管理安全組467

17.2.3創建ECS468

17.2.4SSH登錄471

17.3Hurricane分布式部署與管理471

17.3.1分布式部署原理472

17.3.2分布式安裝配置472

17.3.3分布式啟動476

17.4部署分布式實時處理系統477

17.5未來之路478

17.6本章小結479

媒體評論

本書不但講解高性能分布式實時處理系統編程的原理,特別是對于內存資源管理、編碼解決方案、并發與異步處理、線程模型、批處理與實時處理的區別、消 息隊列、動態裝載等作了詳細介紹,還深入分析了實時處理系統的架構以及內部實現,詳細分析了怎么樣實現一套分布式實時處理系統Hurricane。本 書非常適合大數據開發人員和架構師閱讀,同時可以解決性能優化的很多問題。 ——盧億雷AdMaster技術副總裁兼總架構師

分布式系統可以追溯到20世紀60年代的ARPANET。隨著物聯網、邊緣計算和其他相關領域的蓬勃發展,對高性能分布式實時處理系統的需求日益增多。這本技術專著著眼于實際分布式框架的編程應用,將助力有志于該領域的軟件開發人員。

——安寧Oracle空間數據部門首席工程師

本書將對自己的C 編程、分布式存儲系統、分布式計算框架、分布式通信等知識進行洗禮,不知不覺間就提升了自己的層次,期待閱讀本書之后,也可以構建一個全新的分布式實時處理系統,變成分布式實時計算領域的貢獻者。

——于俊科大訊飛大數據專家

本書由淺到深,從基礎的分布式系統的概念、網絡通信和C 11高性能編程,到流處理中的消息、消息源、處理單元、收集器、計算拓撲等重要抽象的實現,到日志處理、頻繁組合等典型應用,深入研究了一個典型分布式流處理系統的各個重要方面,推薦。

——蔡斌騰訊科技高級工程師

網友評論(不代表本站觀點)

免責聲明

更多出版社