失效链接处理 |
Kafka源码解析与实战 PDF 下载
转载自:https://download.csdn.net/download/mabinwodechengxukaif/10397370
本站整理下载:
版权归出版社和原作者所有,链接已删除,请购买正版
用户下载说明:
电子版仅供预览,下载后24小时内务必删除,支持正版,喜欢的请购买正版书籍:
http://e.dangdang.com/products/1900767537.html
相关截图:
资料简介:
近些年来,大数据技术蓬勃发展,各种围绕大数据处理的平台技术,包括组件、工具、框架越来越丰富;相关的开源工具和实践资料也越来越多,其中消息队列便是一个重要的组成部分。对于一个大型系统而言,我们通常需要围绕消息来构建整个系统的逻辑,Kafka便是目前最主流的消息系统之一。网络上有很多关于Kafka使用的文章,但是始终没有一本全面的从源码和设计上展开阐述的书籍。 本书系统介绍Kafka的实现原理和应用方法,并介绍Kafka的运维工具、客户端编程方法和第三方集成方式,深浅出、图文并茂、分析透彻。本书共10章,主要内容包括:第1章介绍Kafka诞生的背景和主要涉及目标。第2章介绍Kafka的基本组成、拓扑结构以及内部的通信协议。第3章介绍BrokerServer及内部的模块组成。第4章介绍BrokerServer内部的九大基本模块。第5章介绍Broker的控制管理模块。第6章介绍Topic的管理工具。第7章从设计原则、示例代码、模块组成和发送模式四个方面介绍有关消息生产者的相关知识。第8章介绍两种消费者:简单消费者和高级消费者。第9章介绍Kafka的典型应用,包括与Storm、ELK、Hadoop、Spark典型大数据系统的集成。第10章介绍了一个综合实例,描述Kafka作为数据总线在安防整体解决方案中的作用。
资料目录:
前言 阅读指南 本书特点 读者对象 致谢 第1章 Kafka简介 1.1 Kafka诞生的背景 1.2 Kafka在LinkedIn内部的应用 1.3 Kafka的主要设计目标 1.4 为什么使用消息系统 1.5 本章小结 第2章 Kafka的架构 2.1 Kafka的基本组成 2.2 Kafka的拓扑结构 2.3 Kafka内部的通信协议 2.4 本章小结 第3章 Broker概述 3.1 Broker的启动 3.2 Broker内部的模块组成 3.3 本章小结 第4章 Broker的基本模块 4.1 SocketServer 4.2 KafkaRequestHandlerPool 4.3 KafkaApis 4.3.1 LogManager 4.3.1.1 Kafka的日志组成 4.3.1.2 Kafka的消息读取 4.3.1.3 LogManager的启动 4.3.2 ReplicaManager 4.3.2.1 becomeLeaderOrFollower处理流程 4.3.2.2 stopReplicas处理流程 4.3.2.3 maybeShrinkIsr处理流程 4.3.3 OffsetManager 4.3.3.1 Consumer偏移量的保存 4.3.3.2 Consumer偏移量的读取 4.3.3.3 Compact策略 4.3.4 KafkaScheduler 4.3.5 KafkaApis 4.3.5.1 ProducerRequest 4.3.5.2 FetchRequest 4.3.5.3 OffsetRequest 4.3.5.4 TopicMetadataRequest 4.3.5.5 LeaderAndIsrRequest 4.3.5.6 StopReplicaRequest 4.3.5.7 UpdateMetadataRequest 4.3.5.8 ControlledShutdownRequest 4.3.5.9 OffsetCommitRequest 4.3.5.10 OffsetFetchRequest 4.3.5.11 ConsumerMetadataRequest 4.4 KafkaHealthcheck 4.5 TopicConfigManager 4.6 本章小结 第5章 Broker的控制管理模块 5.1 KafkaController的选举策略 5.2 KafkaController的初始化 5.2.1 Leader状态下KafkaController的初始化 5.2.2 Standby状态下KafkaController的初始化 5.3 Topic的分区状态转换机制 5.3.1 分区状态的分类 5.3.2 分区状态的转换 5.3.2.1 NonExistentPartition->NewPartition 5.3.2.2 NewPartition、OnlinePartition、OfflinePartition->OnlinePartition 5.3.2.3 NewPartition、OnlinePartition、OfflinePartition->OfflinePartition 5.3.2.4 OfflinePartition->NonExistentPartition 5.3.3 PartitionStateMachine模块的启动 5.4 Topic分区的领导者副本选举策略 5.4.1 NoOpLeaderSelector 5.4.2 OfflinePartitionLeaderSelector 5.4.3 ReassignedPartitionLeaderSelector 5.4.4 PreferredReplicaPartitionLeaderSelector 5.4.5 ControlledShutdownLeaderSelector 5.5 Topic分区的副本状态转换机制 5.5.1 副本状态的分类 5.5.2 副本状态的转换 5.5.2.1 NonExistentReplica->NewReplica 5.5.2.2 NewReplica、OnlineReplica、OfflineReplica、ReplicaDeletionIneligible->OnlineReplica 5.5.2.3 NewReplica、OnlineReplica、OfflineReplica、ReplicaDeletionIneligible->OfflineReplica 5.5.2.4 OfflineReplica->ReplicaDeletionStarted 5.5.2.5 ReplicaDeletionStarted->ReplicaDeletionSuccessful 5.5.2.6 ReplicaDeletionStarted->ReplicaDeletionIneligible 5.5.2.7 ReplicaDeletionSuccessful->NonExistentReplica 5.5.3 ReplicaStateMachine模块的启动 5.6 KafkaController内部的监听器 5.6.1 TopicChangeListener 5.6.2 AddPartitionsListener 5.6.3 PartitionsReassignedListener 5.6.4 ReassignedPartitionsIsrChangeListener 5.6.5 PreferredReplicaElectionListener 5.6.6 BrokerChangeListener 5.6.7 DeleteTopicsListener 5.7 Kafka集群的负载均衡流程 5.8 Kafka集群的Topic删除流程 5.9 KafkaController的通信模块 5.10 本章小结 第6章 Topic的管理工具 6.1 kafka-topics.sh 6.1.1 createTopic 6.1.2 alterTopic 6.1.3 listTopics 6.1.4 describeTopic 6.1.5 deleteTopic 6.2 kafka-reassign-partitions.sh 6.2.1 generateAssignment 6.2.2 executeAssignment 6.2.3 verifyAssignment 6.3 kafka-preferred-replica-election.sh 6.4 本章小结 第7章 生产者 7.1 设计原则 7.2 示例代码 7.3 模块组成 7.3.1 ProducerSendThread 7.3.2 ProducerPool 7.3.3 DefaultEventHandler 7.4 发送模式 7.4.1 同步模式 7.4.2 异步模式 7.5 本章小结 第8章 消费者 8.1 简单消费者 8.1.1 设计原则 8.1.2 消费者流程 8.1.3 示例代码 8.1.4 原理解析 8.2 高级消费者 8.2.1 设计原则 8.2.2 消费者流程 8.2.3 示例代码 8.2.4 原理解析 8.2.4.1 ConsumerThread和Partition的分配算法 8.2.4.2 ConsumerFetcherThread的消费流程 8.2.4.3 KafkaStream遍历Blocking Queue的流程 8.2.4.4 KafkaStream的负载均衡流程 8.2.4.5 偏移量的持久化机制 8.3 本章小结 第9章 Kafka的典型应用 9.1 Kafka和Storm的集成 9.1.1 Storm简介 9.1.2 示例代码 9.2 Kafka和ELK的集成 9.2.1 ELK简介 9.2.2 配置流程 9.3 Kafka和Hadoop的集成 9.3.1 Hadoop简介 9.3.2 示例代码 9.3.2.1 Hadoop-Producer 9.3.2.2 Hadoop-Consumer 9.4 Kafka和Spark的集成 9.4.1 Spark简介 9.4.2 示例代码 9.4.2.1 Direct方式 9.4.2.2 Receiver方式 9.5 本章小结 第10章 Kafka的综合实例 10.1 安防大数据的主要应用 10.2 Kafka在安防整体解决方案中的角色 10.3 典型业务 10.3.1 车辆人脸图片数据的入库 10.3.2 视频数据的入库 10.3.3 数据延时的监控 10.3.4 数据质量的监控 10.3.5 布控统计 10.3.6 容灾备份
10.4 本章小结 |