新到貨2本75折
Kafka技術內幕:圖文詳解Kafka源碼設計與實現

Kafka技術內幕:圖文詳解Kafka源碼設計與實現

  • 定價:714
  • 優惠價:87621
  • 運送方式:
  • 臺灣與離島
  • 海外
  • 可配送點:台灣、蘭嶼、綠島、澎湖、金門、馬祖
  • 可取貨點:台灣、蘭嶼、綠島、澎湖、金門、馬祖
載入中...
  • 分享
 

內容簡介

Kafka自LinkedIn開源以來就以高性能、高吞吐量、分布式的特性著稱,本書以0.10版本的源碼為基礎,深入分析了Kafka的設計與實現,包括生產者和消費者的消息處理流程,新舊消費者不同的設計方式,存儲層的實現,協調者和控制器如何確保Kafka集群的分布式和容錯特性,兩種同步集群工具MirrorMaker和uReplicator,流處理的兩種API以及Kafka的一些高級特性等。

《Kafka技術內幕 圖文詳解Kafka源碼設計與實現》適合Kafka開發人員閱讀。

鄭奇煌,目前就職於杭州某互聯網風控公司,主要專注於大數據和流計算。對源碼研究有一定的心得體會,樂於分享。
 

目錄

第1章 Kafka入門1
1.1 Kafka流式數據平台1
1.2 Kafka的基本概念3
1.2.1 分區模型3
1.2.2 消費模型4
1.2.3 分布式模型5
1.3 Kafka的設計與實現6
1.3.1 文件系統的持久化與數據傳輸效率6
1.3.2 生產者與消費者8
1.3.3 副本機制和容錯處理10
1.4 快速開始11
1.4.1 單機模式12
1.4.2 分布式模式14
1.4.3 消費組示例16
1.5 環境准備18

第2章 生產者22
2.1 新生產者客戶端22
2.1.1 同步和異步發送消息23
2.1.2 客戶端消息發送線程29
2.1.3 客戶端網絡連接對象31
2.1.4 選擇器處理網絡請求35
2.2 舊生產者客戶端43
2.2.1 事件處理器處理客戶端發送的消息44
2.2.2 對消息集按照節點和分區進行整理46
2.2.3 生產者使用阻塞通道發送請求48
2.3 服務端網絡連接49
2.3.1 服務端使用接收器接受客戶端的連接50
2.3.2 處理器使用選擇器的輪詢處理網絡請求53
2.3.3 請求通道的請求隊列和響應隊列56
2.3.4 Kafka請求處理線程58
2.3.5 服務端的請求處理入口58
2.4 小結60

第3章 消費者:高級API和低級API61
3.1 消費者啟動和初始化67
3.1.1 創建並初始化消費者連接器69
3.1.2 消費者客戶端的線程模型70
3.1.3 重新初始化消費者72
3.2 消費者再平衡操作73
3.2.1 分區的所有權74
3.2.2 為消費者分配分區75
3.2.3 創建分區信息對象78
3.2.4 關閉和更新拉取線程管理器80
3.2.5 分區信息對象的偏移量80
3.3 消費者拉取數據82
3.3.1 拉取線程管理器82
3.3.2 抽象拉取線程87
3.3.3 消費者拉取線程90
3.4 消費者消費消息94
3.4.1 Kafka消息流94
3.4.2 消費者迭代消費消息95
3.5 消費者提交分區偏移量97
3.5.1 提交偏移量到ZK98
3.5.2 提交偏移量到內部主題99
3.5.3 連接偏移量管理器101
3.5.4 服務端處理提交偏移量的請求103
3.5.5 緩存分區的偏移量106
3.6 消費者低級API示例108
3.6.1 消息消費主流程109
3.6.2 找出分區的主副本112
3.6.3 獲取分區的讀取偏移量113
3.6.4 發送拉取請求並消費消息116
3.7 小結117
3.7.1 消費者線程模型117
3.7.2 再平衡和分區分配119

第4章 新消費者121
4.1 新消費者客戶端125
4.1.1 消費者的訂閱狀態125
4.1.2 消費者輪詢的准備工作134
4.1.3 消費者輪詢的流程138
4.1.4 消費者拉取消息146
4.1.5 消費者獲取記錄149
4.1.6 消費消息160
4.2 消費者的網絡客戶端輪詢161
4.2.1 異步請求162
4.2.2 異步請求高級模式169
4.2.3 網絡客戶端輪詢184
4.3 心跳任務188
4.3.1 發送心跳請求188
4.3.2 心跳狀態189
4.3.3 運行心跳任務191
4.3.4 處理心跳結果的示例192
4.3.5 心跳和協調者的關系193
4.4 消費者提交偏移量195
4.4.1 自動提交任務195
4.4.2 將拉取偏移量作為提交偏移量197
4.4.3 同步提交偏移量201
4.4.4 消費者的消息處理語義202
4.5 小結206

第5章 協調者210
5.1 消費者加入消費組211
5.1.1 元數據與分區分配器212
5.1.2 消費者的加入組和同步組213
5.1.3 主消費者執行分配任務220
5.1.4 加入組的准備、完成和監聽器224
5.2 協調者處理請求229
5.2.1 服務端定義發送響應結果的回調方法229
5.2.2 消費者和消費組元數據232
5.2.3 協調者處理請求前的條件檢查236
5.2.4 協調者調用回調方法發送響應給客戶端237
5.3 延遲的加入組操作242
5.3.1「准備再平衡」242
5.3.2 延遲操作和延遲緩存244
5.3.3 嘗試完成延遲的加入操作246
5.3.4 消費組穩定后,原有消費者重新加入消費組250
5.3.5 消費組未穩定,原有消費者重新加入消費組251
5.4 消費組狀態機254
5.4.1 再平衡操作與監聽器254
5.4.2 消費組的狀態轉換262
5.4.3 協調者處理「加入組請求」264
5.4.4 協調者處理「同步組請求」274
5.4.5 協調者處理「離開組請求」276
5.4.6 再平衡超時與會話超時278
5.4.7 延遲的心跳282
5.5 小結290

第6章 存儲層293
6.1 日志的讀寫293
6.1.1 分區、副本、日志、日志
分段294
6.1.2 寫入日志297
6.1.3 日志分段305
6.1.4 讀取日志315
6.1.5 日志管理329
6.1.6 日志壓縮336
6.2 服務端處理讀寫請求348
6.2.1 副本管理器351
6.2.2 分區與副本362
6.3 延遲操作373
6.3.1 延遲操作接口374
6.3.2 延遲操作與延遲緩存383
6.3.3 延遲緩存391
6.4 小結400

第7章 控制器402
7.1 Kafka控制器402
7.1.1 控制器選舉403
7.1.2 控制器上下文406
7.1.3 ZK監聽器408
7.1.4 分區狀態機和副本狀態機410
7.1.5 刪除主題430
7.1.6 重新分配分區436
7.1.7 控制器的網絡通道管理器445
7.2 服務端處理LeaderAndIsr請求448
7.2.1 創建分區449
7.2.2 創建主副本、備份副本451
7.2.3 消費組元數據遷移463
7.3 元數據緩存468
7.3.1 服務端的元數據緩存472
7.3.2 客戶端更新元數據473
7.4 Kafka服務關閉483
7.5 小結487

第8章 基於Kafka構建數據流管道490
8.1 Kafka集群同步工具:MirrorMaker490
8.1.1 單機模擬數據同步491
8.1.2 數據同步的流程493
8.2 Uber集群同步工具:uReplicator498
8.2.1 ApacheHelix介紹498
8.2.2 Helix控制器501
8.2.3 Helix工作節點504
8.3 Kafka連接器505
8.3.1 連接器的使用示例507
8.3.2 開發一個簡單的連接器510
8.3.3 連接器的架構模型515
8.3.4 Herder的實現520
8.3.5 Worker的實現524
8.3.6 配置存儲與狀態存儲530
8.3.7 連接器與任務的實現550
8.4 小結565

第9章 Kafka流處理569
9.1 低級ProcessorAPI569
9.1.1 流處理應用程序示例569
9.1.2 流處理的拓撲575
9.1.3 流處理的線程模型580
9.1.4 狀態存儲613
9.2 高級流式DSL636
9.2.1 DSL應用程序示例636
9.2.2 KStream和KTable638
9.2.3 連接操作665
9.2.4 窗口操作672
9.3 小結684

第10章 高級特性介紹686
10.1 客戶端配額686
10.2 消息與時間戳692
10.3 事務處理699
10.4 小結703
 

詳細資料

  • ISBN:9787115469380
  • 規格:703頁 / 普通級 / 1-1
  • 出版地:中國

最近瀏覽商品

 

相關活動

  • 【科普、電腦】高寶電子書暢銷書展:人生就是選擇的總和,全展75折起
 

購物說明

溫馨提醒您:若您訂單中有購買簡體館無庫存/預售書或庫存於海外廠商的書籍,建議與其他商品分開下單,以避免等待時間過長,謝謝。

大陸出版品書況:因裝幀品質及貨運條件未臻完善,書況與台灣出版品落差甚大,封面老舊、出現磨痕、凹痕等均屬常態,故簡體字館除封面破損、內頁脫落...等較嚴重的狀態外,其餘所有商品將正常出貨。 

 

請注意,部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

調貨時間:若您購買海外庫存之商品,於您完成訂購後,商品原則上約45個工作天內抵台(若有將延遲另行告知)。為了縮短等待的時間,建議您將簡體書與其它商品分開訂購,以利一般商品快速出貨。 

若您具有法人身份為常態性且大量購書者,或有特殊作業需求,建議您可洽詢「企業採購」。 

退換貨說明 

會員所購買的商品均享有到貨十天的猶豫期(含例假日)。退回之商品必須於猶豫期內寄回。 

辦理退換貨時,商品必須是全新狀態與完整包裝(請注意保持商品本體、配件、贈品、保證書、原廠包裝及所有附隨文件或資料的完整性,切勿缺漏任何配件或損毀原廠外盒)。退回商品無法回復原狀者,恐將影響退貨權益或需負擔部分費用。 

訂購本商品前請務必詳閱商品退換貨原則

  • 哲學│歷史│文學 79折起
  • 翦商作者新作79折
  • 針灸匠張寶旬