注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網(wǎng)絡網(wǎng)絡與數(shù)據(jù)通信網(wǎng)絡服務Kafka入門與實踐

Kafka入門與實踐

Kafka入門與實踐

定 價:¥69.00

作 者: 牟大恩
出版社: 人民郵電出版社
叢編項:
標 簽: 編程語言與程序設計 計算機?網(wǎng)絡

ISBN: 9787115469571 出版時間: 2017-11-01 包裝:
開本: 頁數(shù): 字數(shù):  

內(nèi)容簡介

  《Kafka入門與實踐》以Kafka 0.10.1.1版本以基礎,對Kafka的基本組件的實現(xiàn)細節(jié)及其基本應用進行了詳細介紹,同時,通過對Kafka與當前大數(shù)據(jù)主流框架整合應用案例的講解,進一步展現(xiàn)了Kafka在實際業(yè)務中的作用和地位。本書共10章,按照從抽象到具體、從點到線再到面的學習思維模式,由淺入深,理論與實踐相結合,對Kafka進行了分析講解。《Kafka入門與實踐》中的大量實例來源于作者在實際工作中的實踐,具有現(xiàn)實指導意義。相信讀者閱讀完本書之后,能夠全面掌握Kafka的基本實現(xiàn)原理及其基本操作,能夠根據(jù)書中的案例舉一反三,解決實際工作和學習中的問題。此外,在閱讀本書時,讀者可以根據(jù)本書對Kafka理論的分析,再結合Kafka源碼進行定位學習,了解Kafka的設計和思想以及更多的編碼技巧?!禟afka入門與實踐》適合應用Kafka的專業(yè)技術人員閱讀,包括但不限于大數(shù)據(jù)相關應用的開發(fā)者、運維者和愛好者,也適合高等院校、培訓結構相關專業(yè)的師生使用。

作者簡介

  牟大恩,武漢大學碩士,曾先后在網(wǎng)易杭州研究院、掌門科技、優(yōu)酷土豆集團擔任高級開發(fā)工程師和資深開發(fā)工程師職務,目前就職于海通證券總部。有多年的Java開發(fā)及系統(tǒng)設計經(jīng)驗,專注于互聯(lián)網(wǎng)金融及大數(shù)據(jù)應用相關領域。

圖書目錄

第1章 Kafka簡介 1

1.1 Kafka背景 1

1.2 Kafka基本結構 2

1.3 Kafka基本概念 2

1.4 Kafka設計概述 6

1.4.1 Kafka設計動機 6

1.4.2 Kafka特性 6

1.4.3 Kafka應用場景 8

1.5 本書導讀 9

1.6 小結 9

第2章 Kafka安裝配置 11

2.1 基礎環(huán)境配置 11

2.1.1 JDK安裝配置 11

2.1.2 SSH安裝配置 13

2.1.3 ZooKeeper環(huán)境 15

2.2 Kafka單機環(huán)境部署 18

2.2.1 Windows環(huán)境安裝Kafka 19

2.2.2 Linux環(huán)境安裝Kafka 19

2.3 Kafka偽分布式環(huán)境部署 21

2.4 Kafka集群環(huán)境部署 22

2.5 Kafka Manager安裝 22

2.6 Kafka源碼編譯 25

2.6.1 Scala安裝配置 25

2.6.2 Gradle安裝配置 26

2.6.3 Kafka源碼編譯 26

2.6.4 Kafka導入Eclipse 30

2.7 小結 31

第3章 Kafka核心組件 33

3.1 延遲操作組件 33

3.1.1 DelayedOperation 33

3.1.2 DelayedOperationPurgatory 35

3.1.3 DelayedProduce 36

3.1.4 DelayedFetch 38

3.1.5 DelayedJoin 38

3.1.6 DelayedHeartbeat 39

3.1.7 DelayedCreateTopics 40

3.2 控制器 40

3.2.1 控制器初始化 41

3.2.2 控制器選舉過程 46

3.2.3 故障轉移 48

3.2.4 代理上線與下線 49

3.2.5 主題管理 51

3.2.6 分區(qū)管理 54

3.3 協(xié)調器 58

3.3.1 消費者協(xié)調器 58

3.3.2 組協(xié)調器 60

3.4 網(wǎng)絡通信服務 64

3.4.1 Acceptor 65

3.4.2 Processor 66

3.4.3 RequestChannel 68

3.4.4 SocketServer啟動過程 69

3.5 日志管理器 70

3.5.1 Kafka日志結構 70

3.5.2 日志管理器啟動過程 77

3.5.3 日志加載及恢復 79

3.5.4 日志清理 80

3.6 副本管理器 84

3.6.1 分區(qū) 86

3.6.2 副本 88

3.6.3 副本管理器啟動過程 89

3.6.4 副本過期檢查 90

3.6.5 追加消息 92

3.6.6 拉取消息 95

3.6.7 副本同步過程 97

3.6.8 副本角色轉換 99

3.6.9 關閉副本 101

3.7 Handler 103

3.8 動態(tài)配置管理器 104

3.9 代理健康檢測 106

3.10 Kafka內(nèi)部監(jiān)控 107

3.11 小結 110

第4章 Kafka核心流程分析 111

4.1 KafkaServer啟動流程分析 111

4.2 創(chuàng)建主題流程分析 115

4.2.1 客戶端創(chuàng)建主題 115

4.2.2 分區(qū)副本分配 117

4.3 生產(chǎn)者 121

4.3.1 Eclipse運行生產(chǎn)者源碼 121

4.3.2 生產(chǎn)者重要配置說明 123

4.3.3 OldProducer執(zhí)行流程 124

4.3.4 KafkaProducer實現(xiàn)原理 127

4.4 消費者 140

4.4.1 舊版消費者 140

4.4.2 KafkaConsumer初始化 140

4.4.3 消費訂閱 144

4.4.4 消費消息 145

4.4.5 消費偏移量提交 149

4.4.6 心跳探測 150

4.4.7 分區(qū)數(shù)與消費者線程的關系 151

4.4.8 消費者平衡過程 153

4.5 小結 154

第5章 Kafka基本操作實戰(zhàn) 155

5.1 KafkaServer管理 155

5.1.1 啟動Kafka單個節(jié)點 155

5.1.2 啟動Kafka集群 159

5.1.3 關閉Kafka單個節(jié)點 160

5.1.4 關閉Kafka集群 161

5.2 主題管理 162

5.2.1 創(chuàng)建主題 162

5.2.2 刪除主題 164

5.2.3 查看主題 165

5.2.4 修改主題 166

5.3 生產(chǎn)者基本操作 168

5.3.1 啟動生產(chǎn)者 168

5.3.2 創(chuàng)建主題 169

5.3.3 查看消息 170

5.3.4 生產(chǎn)者性能測試工具 170

5.4 消費者基本操作 174

5.4.1 消費消息 174

5.4.2 單播與多播 179

5.4.3 查看消費偏移量 181

5.4.4 消費者性能測試工具 183

5.5 配置管理 183

5.5.1 主題級別配置 184

5.5.2 代理級別設置 185

5.5.3 客戶端/用戶級別配置 187

5.6 分區(qū)操作 188

5.6.1 分區(qū)Leader平衡 188

5.6.2 分區(qū)遷移 190

5.6.3 增加分區(qū) 194

5.6.4 增加副本 195

5.7 連接器基本操作 198

5.7.1 獨立模式 198

5.7.2 REST風格API應用 201

5.7.3 分布式模式 204

5.8 Kafka Manager應用 209

5.9 Kafka安全機制 211

5.9.1 利用SASL/PLAIN進行身份認證 212

5.9.2 權限控制 215

5.10 鏡像操作 218

5.11 小結 219

第6章 Kafka API編程實戰(zhàn) 221

6.1 主題管理 222

6.1.1 創(chuàng)建主題 222

6.1.2 修改主題級別配置 223

6.1.3 增加分區(qū) 224

6.1.4 分區(qū)副本重分配 224

6.1.5 刪除主題 225

6.2 生產(chǎn)者API應用 225

6.2.1 單線程生產(chǎn)者 226

6.2.2 多線程生產(chǎn)者 231

6.3 消費者API應用 233

6.3.1 舊版消費者API應用 233

6.3.2 新版消費者API應用 239

6.4 自定義組件實現(xiàn) 247

6.4.1 分區(qū)器 247

6.4.2 序列化與反序列化 249

6.5 Spring與Kafka整合應用 257

6.5.1 生產(chǎn)者 259

6.5.2 消費者 263

6.6 小結 266

第7章 Kafka Streams 267

7.1 Kafka Streams簡介 267

7.2 Kafka Streams基本概念 268

7.2.1 流 268

7.2.2 流處理器 268

7.2.3 處理器拓撲 268

7.2.4 時間 269

7.2.5 狀態(tài) 270

7.2.6 KStream和KTable 270

7.2.7 窗口 271

7.3 Kafka Streams API介紹 272

7.3.1 KStream與KTable 272

7.3.2 窗口操作 274

7.3.3 連接操作 275

7.3.4 變換操作 277

7.3.5 聚合操作 279

7.4 接口惡意訪問自動檢測 281

7.4.1 應用描述 281

7.4.2 具體實現(xiàn) 282

7.5 小結 285

第8章 Kafka數(shù)據(jù)采集應用 287

8.1 Log4j集成Kafka應用 287

8.1.1 應用描述 287

8.1.2 具體實現(xiàn) 287

8.2 Kafka與Flume整合應用 289

8.2.1 Flume簡介 290

8.2.2 Flume與Kafka比較 291

8.2.3 Flume的安裝配置 291

8.2.4 Flume采集日志寫入Kafka 293

8.3 Kafka與Flume和HDFS整合應用 294

8.3.1 Hadoop安裝配置 295

8.3.2 Flume采集Kafka消息寫入HDFS 298

8.4 小結 301

第9章 Kafka與ELK整合應用 303

9.1 ELK環(huán)境搭建 304

9.1.1 Elasticsearch安裝配置 304

9.1.2 Logstash安裝配置 307

9.1.3 Kibana安裝配置 308

9.2 Kafka與Logstash整合 309

9.2.1 Logstash收集日志到Kafka 309

9.2.2 Logstash從Kafka消費日志 310

9.3 日志采集分析系統(tǒng) 312

9.3.1 Flume采集日志配置 312

9.3.2 Logstash拉取日志配置 313

9.3.3 Kibana日志展示 314

9.4 服務器性能監(jiān)控系統(tǒng) 315

9.4.1 Metricbeat安裝 316

9.4.2 采集信息存儲到Elasticsearch 316

9.4.3 加載beats-dashboards 318

9.4.4 服務器性能監(jiān)控系統(tǒng)具體實現(xiàn) 318

9.5 小結 321

第10章 Kafka與Spark整合應用 323

10.1 Spark簡介 323

10.2 Spark基本操作 324

10.2.1 Spark安裝 325

10.2.2 Spark shell應用 326

10.2.3 spark-submit提交作業(yè) 327

10.3 Spark在智能投顧領域應用 328

10.3.1 應用描述 328

10.3.2 具體實現(xiàn) 329

10.4 熱搜詞統(tǒng)計 334

10.4.1 應用描述 334

10.4.2 具體實現(xiàn) 335

10.5 小結 340


本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號