Kafka源码解析与实战

资源名称:Kafka源码解析与实战 

内容简介:

本书从LinkedIn(领英)公司内部大数据架构讲起,引申出消息队列Kafka,接着讲解Kafka的基本架构,然后着重分析Kafka内部的各模块实现细节。从诞生背景至架构组成,再到内部实现细节,由浅入深,循序渐进。本书不仅讲解Kafka内部的实现原理,而且还详细描述Kafka外部的维护工具,对外的客户端编程原理以及和第三方集成的方式。本书在讲解Kafka的过程中穿插了大量的图片,图文并茂,生动形象,使读者能更加深入地熟悉Kafka。

作者简介:

王亮 架构师,曾在华为担任虚拟化技术工程师,后加入大华公司任分布式数据库系统架构师,研究兴趣为分布式存储、分布式数据库、消息系统等。

资源目录:

前言

第1章 Kafka简介 1

1.1 Kafka诞生的背景 1

1.2 Kafka在LinkedIn内部的应用 3

1.3 Kafka的主要设计目标 4

1.4 为什么使用消息系统 4

1.5 本章小结 5

第2章 Kafka的架构 6

2.1 Kafka的基本组成 6

2.2 Kafka的拓扑结构 8

2.3 Kafka内部的通信协议 9

2.4 本章小结 12

第3章 Broker概述 13

3.1 Broker的启动 13

3.2 Broker内部的模块组成 15

3.3 本章小结 18

第4章 Broker的基本模块 19

4.1 SocketServer 19

4.2 KafkaRequestHandlerPool 25

4.3 KafkaApis 27

4.3.1 LogManager 27

4.3.2 ReplicaManager 37

4.3.3 OffsetManager 47

4.3.4 KafkaScheduler 51

4.3.5 KafkaApis 52

4.4 KafkaHealthcheck 81

4.5 TopicConfigManager 83

4.6 本章小结 85

第5章 Broker的控制管理模块 86

5.1 KafkaController的选举策略 86

5.2 KafkaController的初始化 91

5.2.1 Leader状态下KafkaController的初始化 91

5.2.2 Standby状态下KafkaController的初始化 94

5.3 Topic的分区状态转换机制 95

5.3.1 分区状态的分类 95

5.3.2 分区状态的转换 96

5.3.3 PartitionStateMachine模块的启动 102

5.4 Topic分区的领导者副本选举策略 103

5.4.1 NoOpLeaderSelector 104

5.4.2 Off?linePartitionLeaderSelector 104

5.4.3 ReassignedPartitionLeader-Selector 106

5.4.4 PreferredReplicaPartition-LeaderSelector 107

5.4.5 ControlledShutdownLeader-Selector 108

5.5 Topic分区的副本状态转换机制 109

5.5.1 副本状态的分类 110

5.5.2 副本状态的转换 111

5.5.3 ReplicaStateMachine模块的启动 117

5.6 KafkaController内部的监听器 118

5.6.1 TopicChangeListener 119

5.6.2 AddPartitionsListener 121

5.6.3 PartitionsReassignedListener 122

5.6.4 ReassignedPartitionsIsr-ChangeListener 128

5.6.5 PreferredReplicaElection-Listener 130

5.6.6 BrokerChangeListener 132

5.6.7 DeleteTopicsListener 135

5.7 Kafka集群的负载均衡流程 136

5.8 Kafka集群的Topic删除流程 140

5.9 KafkaController的通信模块 146

5.10 本章小结 150

第6章 Topic的管理工具 151

6.1 kafka-topics.sh 151

6.1.1 createTopic 153

6.1.2 alterTopic 156

6.1.3 listTopics 160

6.1.4 describeTopic 161

6.1.5 deleteTopic 163

6.2 kafka-reassign-partitions.sh 164

6.2.1 generateAssignment 166

6.2.2 executeAssignment 167

6.2.3 verifyAssignment 170

6.3 kafka-preferred-replica-election.sh 172

6.4 本章小结 175

第7章 生产者 176

7.1 设计原则 176

7.2 示例代码 176

7.3 模块组成 180

7.3.1 ProducerSendThread 180

7.3.2 ProducerPool 182

7.3.3 DefaultEventHandler 184

7.4 发送模式 189

7.4.1 同步模式 189

7.4.2 异步模式 189

7.5 本章小结 192

第8章 消费者 193

8.1 简单消费者 193

8.1.1 设计原则 193

8.1.2 消费者流程 194

8.1.3 示例代码 195

8.1.4 原理解析 200

8.2 高级消费者 202

8.2.1 设计原则 202

8.2.2 消费者流程 203

8.2.3 示例代码 204

8.2.4 原理解析 205

8.3 本章小结 227

第9章 Kafka的典型应用 228

9.1 Kafka和Storm的集成 228

9.1.1 Storm简介 228

9.1.2 示例代码 230

9.2 Kafka和ELK的集成 235

9.2.1 ELK简介 235

9.2.2 配置流程 236

9.3 Kafka和Hadoop的集成 237

9.3.1 Hadoop简介 237

9.3.2 示例代码 239

9.4 Kafka和Spark的集成 242

9.4.1 Spark简介 242

9.4.2 示例代码 245

9.5 本章小结 247

第10章 Kafka的综合实例 248

10.1 安防大数据的主要应用 248

10.2 Kafka在安防整体解决方案中的角色 249

10.3 典型业务 250

10.3.1 车辆人脸图片数据的入库 251

10.3.2 视频数据的入库 252

10.3.3 数据延时的监控 254

10.3.4 数据质量的监控 256

10.3.5 布控统计 258

10.3.6 容灾备份 259

10.4 本章小结 260

资源截图:

Kafka源码解析与实战

资源下载此资源仅限注册用户下载,请先
由于本站资源来源于互联网,以研究交流为目的,所有仅供大家参考、学习,不存在任何商业目的与商业用途,如资源存在BUG以及其他任何问题,请自行解决,本站不提供技术服务! 由于资源为虚拟可复制性,下载后不予退积分和退款,谢谢您的支持!如遇到失效或错误的下载链接请联系客服QQ:442469558

:本文采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可, 转载请附上原文出处链接。
1、本站提供的源码不保证资源的完整性以及安全性,不附带任何技术服务!
2、本站提供的模板、软件工具等其他资源,均不包含技术服务,请大家谅解!
3、本站提供的资源仅供下载者参考学习,请勿用于任何商业用途,请24小时内删除!
4、如需商用,请购买正版,由于未及时购买正版发生的侵权行为,与本站无关。
5、本站部分资源存放于百度网盘或其他网盘中,请提前注册好百度网盘账号,下载安装百度网盘客户端或其他网盘客户端进行下载;
6、本站部分资源文件是经压缩后的,请下载后安装解压软件,推荐使用WinRAR和7-Zip解压软件。
7、如果本站提供的资源侵犯到了您的权益,请邮件联系: 442469558@qq.com 进行处理!

猪小侠源码-最新源码下载平台 云计算教程 Kafka源码解析与实战 http://www.20zxx.cn/77442/xuexijiaocheng/yunjs.html

猪小侠源码,优质资源分享网

常见问题
  • 本站所有资源版权均属于原作者所有,均只能用于参考学习,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担
查看详情
  • 最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,建议提前注册好百度网盘账号,使用百度网盘客户端下载
查看详情

相关文章

官方客服团队

为您解决烦忧 - 24小时在线 专业服务