当前位置:首页 > 工业技术
Apache  Kafka源码剖析
Apache  Kafka源码剖析

Apache Kafka源码剖析PDF电子书下载

工业技术

  • 电子书积分:17 积分如何计算积分?
  • 作 者:徐郡明编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2017
  • ISBN:9787121313455
  • 页数:592 页
图书介绍:本书以Kafka 0.10.0版本源码为基础,针对Kafka的架构设计到实现细节进行详细阐述。本书共5章,从Kafka的应用场景、源码环境搭建开始逐步深入,对Kafka的核心概念进行分析介绍,对Kafka生产者、消费者、服务端的源码进行深入的剖析,最后介绍Kafka常用的管理脚本实现,让读者不仅从宏观设计上了解Kafka,而且能够深入到Kafka的细节设计之中。在源码分析的过程中,还穿插了笔者工作积累的经验分析和对Kafka设计的理解,希望能够让读者可以举一反三,不仅知其然,而且知其所以然。本书旨在为读者阅读Kafka源码提供帮助和指导,让读者更加深入地了解Kafka的运行原理、设计理念,让读者在设计分布式系统时可以参考Kafka的优秀设计。本书的内容对于读者全面提升自己的技术能力有很大帮助。
《Apache Kafka源码剖析》目录

第1章 快速入门 1

1.1 Kafka简介 1

1.2 以Kafka为中心的解决方案 2

1.3 Kafka核心概念 6

1.4 搭建Kafka源码环境 16

本章小结 26

第2章 生产者 27

2.1 KafkaProducer使用示例 27

2.2 KafkaProducer分析 30

2.2.1 ProducerInterceptors&ProducerInterceptor 36

2.2.2 Kafka集群元数据 37

2.2.3 Serializer&Deserializer 42

2.2.4 Partitioner 43

2.3 RecordAccumulator分析 45

2.3.1 MemoryRecords 46

2.3.2 RecordBatch 49

2.3.3 BufferPool 53

2.3.4 RecordAccumulator 57

2.4 Sender分析 65

2.4.1 创建请求 67

2.4.2 KSelector 70

2.4.3 InFlightRequests 76

2.4.4 MetadataUpdater 77

2.4.5 NetworkClient 83

本章小结 90

第3章 消费者 91

3.1 KafkaConsumer使用示例 91

3.2 传递保证语义(Delivery guarantee semantic) 93

3.3 Consumer Group Rebalance设计 96

3.4 KafkaConsumer分析 100

3.4.1 ConsumerNetworkClient 101

3.4.2 SubscriptionState 109

3.4.3 ConsumerCoordinator 114

3.4.4 PartitionAssignor分析 117

3.4.5 Heartbeat分析 119

3.4.6 Rebalance实现 126

3.4.7 offset操作 143

3.4.8 Fetcher 150

3.4.9 KafkaConsumer分析总结 160

本章小结 164

第4章 Kafka服务端 165

4.1 网络层 166

4.1.1 Reactor模式 166

4.1.2 SocketServer 169

4.1.3 AbstractServerThread 172

4.1.4 Acceptor 174

4.1.5 Processor 177

4.1.6 RequestChannel 183

4.2 API层 187

4.2.1 KafkaRequestHandler 188

4.2.2 KafkaApis 190

4.3 日志存储 191

4.3.1 基本概念 191

4.3.2 FileMessageSet 192

4.3.3 ByteBufferMessageSet 198

4.3.4 OffesetIndex 212

4.3.5 LogSegment 215

4.3.6 Log 220

4.3.7 LogManager 233

4.4 DelayedOperationPurgatory组件 260

4.4.1 TimingWheel 260

4.4.2 SystemTimer 265

4.4.3 DelayedOperation 267

4.4.4 DelayedOperationPurgatory 269

4.4.5 DelayedProduce 273

4.4.6 DelayedFetch 281

4.5 副本机制 290

4.5.1 副本 291

4.5.2 分区 293

4.5.3 ReplicaManager 304

4.6 KafkaController 339

4.6.1 ControllerChanneManager 342

4.6.2 ControllerContext 345

4.6.3 ControllerBrokerRequestBatch 347

4.6.4 PartitionStateMachine 351

4.6.5 PartitionLeaderSelector 360

4.6.6 ReplicaStateMachine 363

4.6.7 ZooKeeper Listener 369

4.6.8 KafkaController初始化与故障转移 397

4.6.9 处理ControlledShutdownRequest 406

4.7 GroupCoordinator 409

4.7.1 GroupMetadataManager 412

4.7.2 GroupCoordinator分析 432

4.8 身份认证与权限控制 460

4.8.1 配置SASL/PLAIN认证 461

4.8.2 身份认证 464

4.8.3 权限控制 491

4.9 Kafka监控 500

4.9.1 JMX简介 501

4.9.2 Metrics简介 506

4.9.3 Kafka中的Metrics 512

4.9.4 Kafka的监控功能 521

4.9.5 监控KSelector的指标 534

第5章 Kafka Tool 543

5.1 kafka-server-start脚本 544

5.2 kafka-topics脚本 547

5.2.1 创建Topic 548

5.2.2 修改Topic 555

5.3 kafka-preferred-replica-election脚本 558

5.4 kafka-reassign-partitions脚本 560

5.5 kafka-console-producer脚本 565

5.6 kafka-console-consumer脚本 566

5.7 kafka-consumer-groups脚本 569

5.8 DumpLogSegments 573

5.9 kafka-producer-peff-test脚本 577

5.10 kafka-consumer-perf-test脚本 581

5.11 kafka-mirror-maker脚本 583

本章小结 591

相关图书
作者其它书籍
返回顶部