從源代碼的角度詳細分析了Storm的設計與實現,共分為三個部分,第一部分介紹了Storm的基本原理以及Storm集群系統的搭建方法,第二部分深入剖析了Storm的底層架構,如Nimbus、Supervisor、Worker以及Task,第三部分系統討論了Storm如何實現可靠的消息傳輸,如Transaction Topology以及Trident。
《Storm源碼分析》適用於程序員、架構師以及計算機專業的學生。
李明,2001~2007年在哈爾濱工業大學完成本科以及碩士的學習。微軟搜索技術部門資深研發工程師及高級開發經理,擅長Linux、Clojure、Java、C#等多種開發技術,長期致力於大數據、分布式系統的研究和應用,目前致力於實時性分布式處理系統的研究與開發。
第1章 總體架構與代碼結構
1.1 Storm的總體結構
1.2 Storm的元數據
1.2.1 元數據介紹
1.2.2 Storm怎麼使用這些元數據
1.3 Storm的代碼結構
1.3.1 Clojure代碼
1.3.2 Java代碼
1.3.3 Trident代碼
1.3.4 其他代碼
第2章 搭建Storm集群
2.1 搭建單機Storm集群
2.2 搭建多機Storm集群
2.2.1 設置環境
2.2.2 啟動Storm集群
2.2.3 提交Topology
2.3 WordCountTopology介紹
2.3.1 RandomSentenceSpout
2.3.2 SplitSentence
2.3.3 WordCount
2.3.4 WordCountTopology構建
第3章 Storm編程基礎
3.1 Fields定義
3.2 Tuple接口
3.3 常用聲明接口
3.3.1 配置聲明接口
3.3.2 輸入聲明接口
3.3.3 輸出字段聲明接口
3.3.4 組件聲明接口
3.4 Spout輸出收集器
3.4.1 ISpoutOutputCollector和SpoutOutputCollector
3.4.2 Executor中ISpoutOutputCollector的實現
3.5 Bolt輸出收集器
3.5.1 IOutputCollector和OutputCollector
3.5.2 IBasicOutputCollector和BasicOutputCollector
3.5.3 BatchOutputCollector和BatchOutputCollectorImpl
3.5.4 Executor中的IOutputCollector實現
3.6 組件接口
……
第4章 基礎函數和工具類
第5章 通信機制
第6章 Nimbus
第7章 Scheduler
第8章 Scheduler
第9章 Worker
第10章 Executor
第11章 Task
第12章 Storm的Ack框架
第13章 系統運行統計
第14章 系統運行統計的另一種實現
第15章 事務Topology的實現
第16章 事務10pology示例
第17章 Trident的Spout節點
第18章 Trident的存儲
第19章 Trident消息
第20章 Trident操作與處理節點
第21章 Trident流的基本操作
第22章 Trident中流的交互操作
第23章 Trident中的Bolt節點
第24章 Trident的執行優化
第25章 Trident與DRPC
第26章 Trident的Topology構建器
第27章 多語言
第28章 Storm中的配置項