Apache Kafka 源碼剖析
徐郡明
- 出版商: 電子工業
- 出版日期: 2017-05-01
- 定價: $534
- 售價: 8.5 折 $454
- 語言: 簡體中文
- 頁數: 591
- 裝訂: 平裝
- ISBN: 7121313456
- ISBN-13: 9787121313455
-
相關分類:
Message Queue
下單後立即進貨 (約4週~6週)
買這商品的人也買了...
-
$890$703 -
$580$458 -
$690$538 -
$403數據庫索引設計與優化
-
$347Apache Spark源碼剖析
-
$551Hadoop 2.X HDFS源碼剖析
-
$860$731 -
$230Spark Cookbook (中文版)
-
$590$502 -
$454Redis 開發與運維
-
$199Spark Streaming:實時流處理入門與精通 (Learning real-time processing with Spark Streaming)
-
$474$450 -
$250NLTK 基礎教程 — 用 NLTK 和 Python 庫構建機器學習應用 (NLTK Essentials)
-
$390$332 -
$301Spark與Hadoop大數據分析 (Big Data Analytics)
-
$480$432 -
$650$507 -
$505相關性搜索 : 利用 Solr 與 Elasticsearch 創建智能應用 (Relevant search: with applications for Solr and elasticsearch)
-
$560$476 -
$414$393 -
$265Effective Java, 2/e (中文版)
-
$352Kafka 權威指南
-
$250HTTP/2 基礎教程 (Learning HTTP/2: A Practical Guide for Beginners)
-
$520$406 -
$600$474
相關主題
商品描述
本書以 Kafka 0.10.0 版本源碼為基礎,針對 Kafka的架構設計到實現細節進行詳細闡述。本書共5 章,從 Kafka 的應用場景、源碼環境搭建開始逐步深入,對 Kafka 的核心概念進行分析介紹,對 Kafka 生產者、消費者、服務端的源碼進行深入的剖析,最後介紹 Kafka 常用的管理腳本實現,讓讀者不僅從宏觀設計上瞭解 Kafka,而且能夠深入到 Kafka 的細節設計之中。在源碼分析的過程中,還穿插了筆者工作積累的經驗分析和對 Kafka 設計的理解,希望能夠讓讀者可以舉一反三,不僅知其然,而且知其所以然。 本書旨在為讀者閱讀 Kafka 源碼提供幫助和指導,讓讀者更加深入地瞭解 Kafka 的運行原理、設計理念,讓讀者在設計分佈式系統時可以參考 Kafka 的優秀設計。本書的內容對於讀者全面提升自己的技術能力有很大幫助。
作者簡介
徐郡明,武漢大學碩士,目前就職於航天科技集團旗下某研究所,主要負責政企雲平台基礎架構的設計和研發工作,有多年Kafka應用和設計經驗。長期關注大數據處理相關技術以及Kafka的發展。
目錄大綱
第1章快速入門
1.1 Kafka簡介
1.2以Kafka為中心的解決方案
1.3 Kafka核心概念
1.4搭建Kafka源碼環境
本章小結
第2章生產者
2.1 KafkaProducer使用示例
2.2 KafkaProducer分析
2.2.1 ProducerInterceptors&ProducerInterceptor
2.2.2 Kafka集群元數據
2.2.3 Serializer&Deserializer
2.2.4 Partitioner
2.3 RecordAccumulator分析
2.3.1 MemoryRecords
2.3.2 RecordBatch
2.3.3 BufferPool
2.3.4 RecordAccumulator
2.4 Sender分析
2.4.1創建請求
2.4.2 KSelector
2.4.3 InFlightRequests
2.4.4 MetadataUpdater
2.4.5 NetworkClient
本章小結
第3章消費者
3.1 KafkaConsumer使用示例
3.2傳遞保證語義(Delivery guarantee semantic)
3.3 Consumer Group Rebalance設計
3.4 KafkaConsumer分析
3.4.1 ConsumerNetworkClient
3.4.2 SubscriptionState
3.4.3 ConsumerCoordinator
3.4.4 PartitionAssignor分析
3.4 .5 Heartbeat分析
3.4.6 Rebalance實現
3.4.7 offset操作
3.4.8 Fetcher
3.4.9 KafkaConsumer分析總結
本章小結
第4章Kafka服務端
4.1網絡層
4.1.1 Reactor模式
4.1 .2 SocketServer
4.1.3 AbstractServerThread
4.1.4 Acceptor
4.1.5 Processor
4.1.6 RequestChannel
4.2 API層
4.2.1 KafkaRequestHandler
4.2.2 KafkaApis
4.3日誌存儲
4.3.1基本概念
4.3.2 FileMessageSet
4.3.3 ByteBufferMessageSet
4.3.4 OffsetIndex
4.3.5 LogSegment
4.3.6 Log
4.3.7 LogManager
4.4 DelayedOperationPurgatory組件
4.4.1 TimingWheel
4.4.2 SystemTimer
4.4.3 DelayedOperation
4.4.4 DelayedOperationPurgatory
4.4.5 DelayedProduce
4.4.6 DelayedFetch
4.5副本機制
4.5.1副本
4.5.2分區
4.5.3 ReplicaManager
4.6 KafkaController
4.6.1 ControllerChannelManager
4.6.2 ControllerContext
4.6.3 ControllerBrokerRequestBatch
4.6.4 PartitionStateMachine
4.6.5 PartitionLeaderSelector
4.6.6 ReplicaStateMachine
4.6.7 ZooKeeper Listener
4.6.8 KafkaController初始化與故障轉移
4.6.9處理ControlledShutdownRequest
4.7 GroupCoordinator
4.7.1 GroupMetadataManager
4.7.2 GroupCoordinator分析
4.8身份認證與權限控制
4.8.1配置SASL/PLAIN認證
4.8.2身份認證
4.8.3權限控制
4.9 Kafka 監控
4.9.1 JMX簡介
4.9.2 Metrics簡介
4.9.3 Kafka中的Metrics
4.9.4 Kafka的監控功能
4.9.5監控KSelector的指標
第5章Kafka Tool
5.1 kafka-server-start腳本
5.2 kafka-topics腳本
5.2 .1創建Topic
5.2.2修改Topic
5.3 kafka-preferred-replica-election腳本
5.4 kafka-reassign-partitions腳本
5.5 kafka-console-producer腳本
5.6 kafka-console-consumer腳本
5.7 kafka-consumer-groups腳本
5.8 DumpLogSegments
5.9 kafka -producer-perf-test腳本
5.10 kafka-consumer-perf-test腳本
5.11 kafka-mirror-maker腳本
本章小結