Apache Kafka源码剖析 part3
《Apache Kafka源码剖析》以Kafka 0.10.0版本源码为基础,针对Kafka的架构设计到实现细节进行详细阐述。《Apache Kafka源码剖析》共5章,从Kafka的应用场景、源码环境搭建开始逐步深入,不仅介绍Kafka的核心概念,而且对Kafka生产者、消费者、服务端的源码进行深入的剖析,最后介绍Kafka常用的管理脚本实现,让读者不仅从宏观设计上了解Kafka,而且能够深入到 Kafka的细节设计之中。在源码分析的过程中,还穿插了笔者工作积累的经验和对Kafka设计的理解,希望读者可以举一反三,不仅知其然,而且知其所以然。 《Apache Kafka源码剖析》旨在为读者阅读Kafka源码提供帮助和指导,让读者更加深入地了解Kafka的运行 原理、设计理念,让读者在设计分布式系统时可以参考Kafka的优秀设计。《Apache 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脚本 本章小结 原理、设计理念,让读者在设计分布式系统时可以参考Kafka的优秀设计。《Apache 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脚本 本章小结
用户评论
为啥是一个网页??