本書從Kafka的基本概念入手,主要從生產端、消費端、服務端等3個方面進行全面的陳述,主要內容包括Kafka的基本使用方式、生產者用戶端的使用、消費者用戶端的使用、主題與分區、記錄檔儲存、深入原理解析、監控的設計、高級應用的擴展以及與Spark的整合等。
Kafka的核心使用Scala語言編寫,但是本書基本以Java語言作為主要的示例語言,方便絕大多數讀者的理解。
本書雖然沒有明確的界定,但是總體上可以劃分為三個部分:基礎篇、原理篇和擴展篇,以循序漸進的方式讓讀者容易接受。
本書主要內容:
■ 初識Kafka
■ 生產者
■ 消費者
■ 主題與分區
■ 記錄檔儲存
■ 深入服務端
■ 深入用戶端
■ 可用性深入
■ Kafka 應用
■ Kafka 監控
■ 進階應用
■ Kafka 與Spark 的整合
■ Kafka 原始程式環境架設
適合讀者群:本書將實作與原理相結合,既適合Kafka 初學者,也適合對Kafka 有一定深度認識的讀者。
本書特色
◎認識Kafka的基本概念
◎從生產端、消費端、服務端說明
◎擴展至進階應用與Spark整合
目錄
01 初識Kafka
1.1 基本概念 .
1.2 安裝與設定
1.3 生產與消費
1.4 服務端參數設定
1.5 歸納
02 生產者
2.1 用戶端開發
2.2 原理分析
2.3 重要的生產者參數
2.4 歸納
03 消費者
3.1 消費者與消費組
3.2 用戶端開發
3.3 歸納
04 主題與分區
4.1 主題的管理
4.2 初識KafkaAdminClient
4.3 分區的管理
4.4 如何選擇合適的分區數
4.5 歸納
05 記錄檔儲存
5.1 檔案目錄版面設定
5.2 記錄檔格式的演變
5.3 記錄檔索引
5.4 記錄檔清理
5.5 磁碟儲存
5.6 歸納
06 深入服務端
6.1 協定設計
6.2 時間輪
6.3 延遲時間操作
6.4 控制器
6.5 參數解密
6.6 歸納
07 深入用戶端
7.1 分區分配策略
7.2 消費者協調器和組協調器
7.3 __consumer_offsets 剖析
7.4 交易
7.5 歸納
08 可用性深入
8.1 備份剖析
8.2 記錄檔同步機制
8.3 可用性分析
8.4 歸納
09 Kafka 應用
9.1 命令列工具
9.2 Kafka Connect
9.3 Kafka Mirror Maker
9.4 Kafka Streams
9.5 歸納
10 Kafka 監控
10.1 監控資料的來源
10.2 消費落後
10.3 同步故障分區
10.4 監控指標說明
10.5 監控模組
10.6 歸納 .
11 進階應用
11.1 過期時間(TTL)
11.2 延遲時間佇列
11.3 無效信件佇列和重試佇列
11.4 訊息路由
11.5 訊息軌跡
11.6 訊息稽核
11.7 訊息代理
11.8 訊息中介軟體選型
11.9 歸納
12 Kafka 與Spark 的整合
12.1 Spark 的安裝及簡單應用
12.2 Spark 程式設計模型
12.3 Spark 的執行結構
12.4 Spark Streaming 簡介
12.5 Kafka 與Spark Streaming 的整合
12.6 Spark SQL
12.7 Structured Streaming
12.8 Kafka 與Structured Streaming 的整合
12.9 歸納
A Kafka 原始程式環境架設令列參數
1.1 基本概念 .
1.2 安裝與設定
1.3 生產與消費
1.4 服務端參數設定
1.5 歸納
02 生產者
2.1 用戶端開發
2.2 原理分析
2.3 重要的生產者參數
2.4 歸納
03 消費者
3.1 消費者與消費組
3.2 用戶端開發
3.3 歸納
04 主題與分區
4.1 主題的管理
4.2 初識KafkaAdminClient
4.3 分區的管理
4.4 如何選擇合適的分區數
4.5 歸納
05 記錄檔儲存
5.1 檔案目錄版面設定
5.2 記錄檔格式的演變
5.3 記錄檔索引
5.4 記錄檔清理
5.5 磁碟儲存
5.6 歸納
06 深入服務端
6.1 協定設計
6.2 時間輪
6.3 延遲時間操作
6.4 控制器
6.5 參數解密
6.6 歸納
07 深入用戶端
7.1 分區分配策略
7.2 消費者協調器和組協調器
7.3 __consumer_offsets 剖析
7.4 交易
7.5 歸納
08 可用性深入
8.1 備份剖析
8.2 記錄檔同步機制
8.3 可用性分析
8.4 歸納
09 Kafka 應用
9.1 命令列工具
9.2 Kafka Connect
9.3 Kafka Mirror Maker
9.4 Kafka Streams
9.5 歸納
10 Kafka 監控
10.1 監控資料的來源
10.2 消費落後
10.3 同步故障分區
10.4 監控指標說明
10.5 監控模組
10.6 歸納 .
11 進階應用
11.1 過期時間(TTL)
11.2 延遲時間佇列
11.3 無效信件佇列和重試佇列
11.4 訊息路由
11.5 訊息軌跡
11.6 訊息稽核
11.7 訊息代理
11.8 訊息中介軟體選型
11.9 歸納
12 Kafka 與Spark 的整合
12.1 Spark 的安裝及簡單應用
12.2 Spark 程式設計模型
12.3 Spark 的執行結構
12.4 Spark Streaming 簡介
12.5 Kafka 與Spark Streaming 的整合
12.6 Spark SQL
12.7 Structured Streaming
12.8 Kafka 與Structured Streaming 的整合
12.9 歸納
A Kafka 原始程式環境架設令列參數
序
前言
初識Kafka 時,筆者接觸的還是0.8.1 版本,Kafka 發展到目前的2.0.0 版本,筆者也見證了Kafka 的蛻變,例如舊版用戶端的淘汰、新版用戶端的設計、Kafka 控制器的反覆運算最佳化、私有協定的變更、交易功能的引用等。Kafka 從昔日的新星逐漸走向成熟,再到今日的王者地位不可撼動,這期間有太多的故事可講。
剛接觸Kafka 時,市面上很少有關於Kafka 的書籍。在學習Kafka 的過程中也經歷過很多挫敗,例如Scala 這門程式語言就讓筆者在Kafka 的原始程式大門外卻步良久。那時候就在想,如果有一本書能夠全方位地解析Kafka 該有多好啊。
隨著對Kafka 的逐步了解,也漸漸地萌生了自己寫一本關於Kafka 的書的想法,產生這一想法至今已超過兩年。在這期間,筆者陰差陽錯地先寫了一本關於RabbitMQ 的書,此時已是2017 年年末,市面上已經陸續出現了好幾本有關Kafka 的書,而且此時Kafka 的版本也已經升級到1.0.0。
筆者認真看過幾乎所有現存的Kafka 的書籍,回想這一路學習和使用Kafka 的經歷,深感這些都不是自己理想中的書籍,那麼不如自己再“操刀”寫一本。本書秉承能用文字表述的就不貼原始程式、能用圖形輔助的就不乏味陳述;既要讓新手能夠快速入門,也要讓老手有所收穫,從基礎概念入手,再到原理深入,讓讀者能夠由淺入深地了解Kafka。
本書依據Kafka 2.0.0 版本撰寫,所有內容都具備理論基礎並全部實作過,也是筆者在工作中的認知累積,希望本書能夠讓讀者有所收穫。
初識Kafka 時,筆者接觸的還是0.8.1 版本,Kafka 發展到目前的2.0.0 版本,筆者也見證了Kafka 的蛻變,例如舊版用戶端的淘汰、新版用戶端的設計、Kafka 控制器的反覆運算最佳化、私有協定的變更、交易功能的引用等。Kafka 從昔日的新星逐漸走向成熟,再到今日的王者地位不可撼動,這期間有太多的故事可講。
剛接觸Kafka 時,市面上很少有關於Kafka 的書籍。在學習Kafka 的過程中也經歷過很多挫敗,例如Scala 這門程式語言就讓筆者在Kafka 的原始程式大門外卻步良久。那時候就在想,如果有一本書能夠全方位地解析Kafka 該有多好啊。
隨著對Kafka 的逐步了解,也漸漸地萌生了自己寫一本關於Kafka 的書的想法,產生這一想法至今已超過兩年。在這期間,筆者陰差陽錯地先寫了一本關於RabbitMQ 的書,此時已是2017 年年末,市面上已經陸續出現了好幾本有關Kafka 的書,而且此時Kafka 的版本也已經升級到1.0.0。
筆者認真看過幾乎所有現存的Kafka 的書籍,回想這一路學習和使用Kafka 的經歷,深感這些都不是自己理想中的書籍,那麼不如自己再“操刀”寫一本。本書秉承能用文字表述的就不貼原始程式、能用圖形輔助的就不乏味陳述;既要讓新手能夠快速入門,也要讓老手有所收穫,從基礎概念入手,再到原理深入,讓讀者能夠由淺入深地了解Kafka。
本書依據Kafka 2.0.0 版本撰寫,所有內容都具備理論基礎並全部實作過,也是筆者在工作中的認知累積,希望本書能夠讓讀者有所收穫。
網路書店
類別
折扣
價格
-
新書68折$531
-
新書76折$595
-
新書79折$616
-
新書85折$663
-
新書9折$702
-
新書$780