注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)Kafka進(jìn)階

Kafka進(jìn)階

Kafka進(jìn)階

定 價:¥89.00

作 者: 趙渝強(qiáng) 著
出版社: 電子工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

ISBN: 9787121426537 出版時間: 2022-02-01 包裝: 平裝
開本: 16開 頁數(shù): 240 字?jǐn)?shù):  

內(nèi)容簡介

  本書基于作者多年的教學(xué)與實(shí)踐進(jìn)行編寫,重點(diǎn)介紹Kafka消息系統(tǒng)的核心原理與架構(gòu),內(nèi)容涉及開發(fā)、運(yùn)維、管理與架構(gòu)。全書共11章,第1章,介紹Kafka體系架構(gòu)基礎(chǔ),包括消息系統(tǒng)的基本知識、Kafka的體系架構(gòu)與ZooKeeper;第2章,介紹Kafka的環(huán)境部署,以及基本的應(yīng)用程序開發(fā);第3章,介紹Kafka的生產(chǎn)者及其運(yùn)行機(jī)制,包括生產(chǎn)者的創(chuàng)建和執(zhí)行過程、生產(chǎn)者的消息發(fā)送模式和生產(chǎn)者的高級特性等;第4章,介紹Kafka的消費(fèi)者及其運(yùn)行機(jī)制,包括消費(fèi)者的消費(fèi)模式、消費(fèi)者組與消費(fèi)者、消費(fèi)者的偏移量與提交及消費(fèi)者的高級特性等;第5章,介紹Kafka服務(wù)器端的核心原理,包括主題與分區(qū)、消息的持久性與傳輸保障、Kafka配額與日志的管理;第6章,介紹Kafka的流處理引擎Kafka Stream;第7章,介紹使用不同的工具監(jiān)控Kafka,包括Kafka Manager、Kafka Tool、KafkaOffsetMonitor和JConsole;第8章至第11章,介紹Kafka與外部系統(tǒng)的集成,包括集成Flink、集成Storm、集成Spark和集成Flume。

作者簡介

  趙渝強(qiáng)(趙強(qiáng)老師),18年以上的IT行業(yè)從業(yè)經(jīng)歷,清華大學(xué)計(jì)算機(jī)軟件專業(yè)畢業(yè),京東大學(xué)大數(shù)據(jù)學(xué)院院長,Oracle中國有限公司高級技術(shù)顧問,華為官方認(rèn)證講師,曾在BEA、甲骨文、摩托羅拉等世界500強(qiáng)公司擔(dān)任高級軟件架構(gòu)師或咨詢顧問等要職,精通大數(shù)據(jù)、數(shù)據(jù)庫、容器技術(shù)、中間件技術(shù)和Java技術(shù)。

圖書目錄

第1章 Kafka體系架構(gòu)基礎(chǔ)\t1
1.1 什么是消息系統(tǒng)\t1
1.2 消息系統(tǒng)的分類\t2
1.2.1 同步消息機(jī)制與異步消息機(jī)制\t3
1.2.2 隊(duì)列與主題\t4
1.3 Kafka的體系架構(gòu)\t5
1.3.1 消息服務(wù)器\t6
1.3.2 主題、分區(qū)與副本\t6
1.3.3 生產(chǎn)者\(yùn)t7
1.3.4 消費(fèi)者與消費(fèi)者組\t8
1.4 分布式協(xié)調(diào)服務(wù)ZooKeeper\t9
1.4.1 ZooKeeper集群的架構(gòu)\t9
1.4.2 ZooKeeper的節(jié)點(diǎn)類型\t10
1.4.3 ZooKeeper的觀察機(jī)制\t13
1.4.4 ZooKeeper的分布式鎖\t14
1.4.5 ZooKeeper在Kafka中的作用\t17
1.5 準(zhǔn)備實(shí)驗(yàn)環(huán)境\t17
1.5.1 安裝CentOS操作系統(tǒng)\t17
1.5.2 配置CentOS操作系統(tǒng)\t23
1.5.3 安裝JDK\t24
第2章 部署Kafka\t25
2.1 部署ZooKeeper\t25
2.1.1 ZooKeeper的核心配置文件\t26
2.1.2 部署ZooKeeper的Standalone模式\t28
2.1.3 部署ZooKeeper的集群模式\t32
2.1.4 測試ZooKeeper集群\t35
2.2 安裝部署Kafka\t36
2.2.1 單機(jī)單Broker的部署\t40
2.2.2 單機(jī)多Broker的部署\t42
2.2.3 多機(jī)多Broker的部署\t43
2.2.4 使用命令行測試Kafka\t44
2.3 Kafka配置參數(shù)詳解\t45
2.4 Kafka在ZooKeeper中保存的數(shù)據(jù)\t46
2.5 開發(fā)客戶端程序測試Kafka\t47
2.5.1 開發(fā)Java版本的客戶端程序\t48
2.5.2 開發(fā)Scala版本的客戶端程序\t50
第3章 Kafka的生產(chǎn)者\(yùn)t53
3.1 Kafka生產(chǎn)者的執(zhí)行過程\t53
3.2 創(chuàng)建Kafka生產(chǎn)者\(yùn)t54
3.2.1 創(chuàng)建基本的消息生產(chǎn)者\(yùn)t54
3.2.2 發(fā)送自定義消息對象\t55
3.3 生產(chǎn)者的消息發(fā)送模式\t60
3.4 生產(chǎn)者的高級特性\t61
3.4.1 生產(chǎn)者分區(qū)機(jī)制\t61
3.4.2 生產(chǎn)者壓縮機(jī)制\t66
3.4.3 生產(chǎn)者攔截器\t67
3.5 生產(chǎn)者的參數(shù)配置\t71
第4章 Kafka的消費(fèi)者\(yùn)t77
4.1 Kafka消費(fèi)者的消費(fèi)模式\t77
4.1.1 消息的推送模式\t77
4.1.2 消息的拉取模式\t77
4.1.3 推送模式與拉取模式的區(qū)別\t78
4.1.4 消息者組\t78
4.2 創(chuàng)建Kafka消費(fèi)者\(yùn)t79
4.2.1 創(chuàng)建基本的消息消費(fèi)者\(yùn)t79
4.2.2 接收自定義消息對象\t80
4.3 消費(fèi)者與消費(fèi)者組\t82
4.3.1 消費(fèi)者和消費(fèi)者組與分區(qū)的關(guān)系\t82
4.3.2 分區(qū)的重平衡\t85
4.4 消費(fèi)者的偏移量與提交\t86
4.4.1 偏移量與重平衡\t86
4.4.2 偏移量的提交方式\t87
4.5 消費(fèi)者的高級特性\t90
4.5.1 消費(fèi)者的分區(qū)策略\t90
4.5.2 重平衡監(jiān)聽器\t93
4.5.3 消費(fèi)者的攔截器\t95
4.5.4 消費(fèi)者的優(yōu)雅退出\t97
4.6 消費(fèi)者的參數(shù)配置\t98
第5章 Kafka的服務(wù)器端\t102
5.1 主題與分區(qū)\t102
5.1.1 主題和分區(qū)的關(guān)系\t102
5.1.2 主題的管理\t103
5.1.3 使用KafkaAdminClient\t109
5.2 消息的持久性\t111
5.2.1 Kafka消息持久性概述\t111
5.2.2 Kafka的持久化原理解析\t112
5.2.3 持久化的讀寫流程\t114
5.2.4 為什么要建立分段和索引\t115
5.3 消息的傳輸保障\t115
5.3.1 生產(chǎn)者的ack機(jī)制\t115
5.3.2 消費(fèi)者與高水位線\t116
5.4 副本和Leader副本的選舉\t117
5.5 Kafka配額的管理\t118
5.6 Kafka的日志刪除與壓縮\t120
5.6.1 日志的刪除\t120
5.6.2 日志的壓縮\t120
5.6.3 清理的實(shí)現(xiàn)細(xì)節(jié)\t120
5.7 Kafka與ZooKeeper\t123
5.7.1 ZooKeeper扮演的角色\t123
5.7.2 Kafka在ZooKeeper中存儲的數(shù)據(jù)\t124
5.8 服務(wù)器端參數(shù)設(shè)置\t125
第6章 流處理引擎Kafka Stream\t130
6.1 Kafka Stream的體系架構(gòu)\t130
6.1.1 為什么需要Kafka Stream\t130
6.1.2 Kafka Stream的體系架構(gòu)\t131
6.1.3 執(zhí)行Kafka Stream示例程序\t132
6.2 開發(fā)自己的Kafka Stream應(yīng)用程序\t134
6.3 Kafka Stream中的數(shù)據(jù)模型\t139
6.3.1 KStream與KTable\t139
6.3.2 狀態(tài)管理\t141
6.4 Kafka Stream中的窗口計(jì)算\t144
6.4.1 時間\t144
6.4.2 窗口\t145
第7章 監(jiān)控Kafka\t151
7.1 Kafka的監(jiān)控指標(biāo)\t151
7.2 使用Kafka客戶端監(jiān)控工具\(yùn)t153
7.2.1 Kafka Manager\t153
7.2.2 Kafka Tool\t157
7.2.3 KafkaOffsetMonitor\t162
7.2.4 JConsole\t163
7.3 監(jiān)控ZooKeeper\t166
第8章 Kafka與Flink集成\t168
8.1 Flink的體系架構(gòu)\t168
8.1.1 Flink中的數(shù)據(jù)集\t168
8.1.2 Flink的生態(tài)圈體系\t169
8.1.3 Flink的體系架構(gòu)\t171
8.2 安裝部署Flink Standalone模式\t172
8.2.1 Flink Standalone模式的部署\t174
8.2.2 在Standalone模式上執(zhí)行Flink任務(wù)\t178
8.3 Flink DataSet API算子\t181
8.4 Flink DataStream API算子\t191
8.5 集成Flink與Kafka\t196
8.5.1 將Kafka作為Flink的Source Connector\t197
8.5.2 將Kafka作為Flink的Sink Connector\t200
第9章 Kafka與Storm集成\t203
9.1 離線計(jì)算與流式計(jì)算\t203
9.2 Apache Storm的體系架構(gòu)\t205
9.3 部署Apache Storm\t207
9.3.1 部署Storm的偽分布模式\t209
9.3.2 部署Storm的全分布模式\t213
9.3.3 Storm HA模式\t216
9.4 執(zhí)行Apache Storm任務(wù)\t220
9.4.1 執(zhí)行WordCountTopology\t220
9.4.2 Storm的其他管理命令\t224
9.5 開發(fā)自己的Storm任務(wù)\t224
9.5.1 Storm Topology任務(wù)處理的數(shù)據(jù)模型\t224
9.5.2 開發(fā)自己的WordCountTopology任務(wù)\t226
9.6 集成Kafka與Storm\t232
9.6.1 Storm從Kafka中接收數(shù)據(jù)\t233
9.6.2 測試Kafka與Storm的集成\t236
9.6.3 Storm將數(shù)據(jù)輸出到Kafka\t238
第10章 Kafka與Spark集成\t240
10.1 Spark基礎(chǔ)\t240
10.1.1 Spark的特點(diǎn)\t241
10.1.2 Spark的體系架構(gòu)\t242
10.2 安裝部署Spark環(huán)境\t243
10.2.1 偽分布模式的單節(jié)點(diǎn)環(huán)境部署\t246
10.2.2 全分布模式的環(huán)境安裝部署\t248
10.3 執(zhí)行Spark任務(wù)\t249
10.3.1 使用spark-submit提交任務(wù)\t249
10.3.2 交互式命令行工具spark-shell\t251
10.4 Spark的核心編程模型\t256
10.4.1 什么是RDD\t256
10.4.2 RDD的算子\t257
10.4.3 開發(fā)自己的WordCount程序\t260
10.5 流式計(jì)算引擎Spark Streaming\t264
10.5.1 什么是Spark Streaming\t264
10.5.2 離散流\t265
10.5.3 開發(fā)自己的Spark Streaming程序\t266
10.6 集成Kafka與Spark Streaming\t269
10.6.1 基于Receiver的方式\t269
10.6.2 直接讀取的方式\t271
第11章 Kafka與Flume集成\t274
11.1 Apache Flume基礎(chǔ)\t274
11.1.1 Apache Flume的體系架構(gòu)\t274
11.1.2 Apache Flume的安裝和部署\t278
11.2 Flume的Source組件\t280
11.3 Flume的Channel組件\t282
11.4 Flume的Sink組件\t283
11.5 集成Kafka與Flume\t287

本目錄推薦

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