Kafka入门与实践

Kafka入门与实践
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者:
2017-11
版次: 1
ISBN: 9787115469571
定价: 69.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 340页
正文语种: 简体中文
81人买过
  •   《Kafka入门与实践》以Kafka 0.10.1.1版本以基础,对Kafka的基本组件的实现细节及其基本应用进行了详细介绍,同时,通过对Kafka与当前大数据主流框架整合应用案例的讲解,进一步展现了Kafka在实际业务中的作用和地位。本书共10章,按照从抽象到具体、从点到线再到面的学习思维模式,由浅入深,理论与实践相结合,对Kafka进行了分析讲解。
      《Kafka入门与实践》中的大量实例来源于作者在实际工作中的实践,具有现实指导意义。相信读者阅读完本书之后,能够全面掌握Kafka的基本实现原理及其基本操作,能够根据书中的案例举一反三,解决实际工作和学习中的问题。此外,在阅读本书时,读者可以根据本书对Kafka理论的分析,再结合Kafka源码进行定位学习,了解Kafka的设计和思想以及更多的编码技巧。
      《Kafka入门与实践》适合应用Kafka的专业技术人员阅读,包括但不限于大数据相关应用的开发者、运维者和爱好者,也适合高等院校、培训结构相关专业的师生使用。
      牟大恩,武汉大学硕士,曾先后在网易杭州研究院、掌门科技、优酷土豆集团担任高级开发工程师和资深开发工程师职务,目前就职于海通证券总部。有多年的Java开发及系统设计经验,专注于互联网金融及大数据应用相关领域。
    第1章 Kafka简介 1
    1.1 Kafka背景 1
    1.2 Kafka基本结构 2
    1.3 Kafka基本概念 2
    1.4 Kafka设计概述 6
    1.4.1 Kafka设计动机 6
    1.4.2 Kafka特性 6
    1.4.3 Kafka应用场景 8
    1.5 本书导读 9
    1.6 小结 9
    第2章 Kafka安装配置 11
    2.1 基础环境配置 11
    2.1.1 JDK安装配置 11
    2.1.2 SSH安装配置 13
    2.1.3 ZooKeeper环境 15
    2.2 Kafka单机环境部署 18
    2.2.1 Windows环境安装Kafka 19
    2.2.2 Linux环境安装Kafka 19
    2.3 Kafka伪分布式环境部署 21
    2.4 Kafka集群环境部署 22
    2.5 Kafka Manager安装 22
    2.6 Kafka源码编译 25
    2.6.1 Scala安装配置 25
    2.6.2 Gradle安装配置 26
    2.6.3 Kafka源码编译 26
    2.6.4 Kafka导入Eclipse 30
    2.7 小结 31
    第3章 Kafka核心组件 33
    3.1 延迟操作组件 33
    3.1.1 DelayedOperation 33
    3.1.2 DelayedOperationPurgatory 35
    3.1.3 DelayedProduce 36
    3.1.4 DelayedFetch 38
    3.1.5 DelayedJoin 38
    3.1.6 DelayedHeartbeat 39
    3.1.7 DelayedCreateTopics 40
    3.2 控制器 40
    3.2.1 控制器初始化 41
    3.2.2 控制器选举过程 46
    3.2.3 故障转移 48
    3.2.4 代理上线与下线 49
    3.2.5 主题管理 51
    3.2.6 分区管理 54
    3.3 协调器 58
    3.3.1 消费者协调器 58
    3.3.2 组协调器 60
    3.4 网络通信服务 64
    3.4.1 Acceptor 65
    3.4.2 Processor 66
    3.4.3 RequestChannel 68
    3.4.4 SocketServer启动过程 69
    3.5 日志管理器 70
    3.5.1 Kafka日志结构 70
    3.5.2 日志管理器启动过程 77
    3.5.3 日志加载及恢复 79
    3.5.4 日志清理 80
    3.6 副本管理器 84
    3.6.1 分区 86
    3.6.2 副本 88
    3.6.3 副本管理器启动过程 89
    3.6.4 副本过期检查 90
    3.6.5 追加消息 92
    3.6.6 拉取消息 95
    3.6.7 副本同步过程 97
    3.6.8 副本角色转换 99
    3.6.9 关闭副本 101
    3.7 Handler 103
    3.8 动态配置管理器 104
    3.9 代理健康检测 106
    3.10 Kafka内部监控 107
    3.11 小结 110
    第4章 Kafka核心流程分析 111
    4.1 KafkaServer启动流程分析 111
    4.2 创建主题流程分析 115
    4.2.1 客户端创建主题 115
    4.2.2 分区副本分配 117
    4.3 生产者 121
    4.3.1 Eclipse运行生产者源码 121
    4.3.2 生产者重要配置说明 123
    4.3.3 OldProducer执行流程 124
    4.3.4 KafkaProducer实现原理 127
    4.4 消费者 140
    4.4.1 旧版消费者 140
    4.4.2 KafkaConsumer初始化 140
    4.4.3 消费订阅 144
    4.4.4 消费消息 145
    4.4.5 消费偏移量提交 149
    4.4.6 心跳探测 150
    4.4.7 分区数与消费者线程的关系 151
    4.4.8 消费者平衡过程 153
    4.5 小结 154
    第5章 Kafka基本操作实战 155
    5.1 KafkaServer管理 155
    5.1.1 启动Kafka单个节点 155
    5.1.2 启动Kafka集群 159
    5.1.3 关闭Kafka单个节点 160
    5.1.4 关闭Kafka集群 161
    5.2 主题管理 162
    5.2.1 创建主题 162
    5.2.2 删除主题 164
    5.2.3 查看主题 165
    5.2.4 修改主题 166
    5.3 生产者基本操作 168
    5.3.1 启动生产者 168
    5.3.2 创建主题 169
    5.3.3 查看消息 170
    5.3.4 生产者性能测试工具 170
    5.4 消费者基本操作 174
    5.4.1 消费消息 174
    5.4.2 单播与多播 179
    5.4.3 查看消费偏移量 181
    5.4.4 消费者性能测试工具 183
    5.5 配置管理 183
    5.5.1 主题级别配置 184
    5.5.2 代理级别设置 185
    5.5.3 客户端/用户级别配置 187
    5.6 分区操作 188
    5.6.1 分区Leader平衡 188
    5.6.2 分区迁移 190
    5.6.3 增加分区 194
    5.6.4 增加副本 195
    5.7 连接器基本操作 198
    5.7.1 独立模式 198
    5.7.2 REST风格API应用 201
    5.7.3 分布式模式 204
    5.8 Kafka Manager应用 209
    5.9 Kafka安全机制 211
    5.9.1 利用SASL/PLAIN进行身份认证 212
    5.9.2 权限控制 215
    5.10 镜像操作 218
    5.11 小结 219
    第6章 Kafka API编程实战 221
    6.1 主题管理 222
    6.1.1 创建主题 222
    6.1.2 修改主题级别配置 223
    6.1.3 增加分区 224
    6.1.4 分区副本重分配 224
    6.1.5 删除主题 225
    6.2 生产者API应用 225
    6.2.1 单线程生产者 226
    6.2.2 多线程生产者 231
    6.3 消费者API应用 233
    6.3.1 旧版消费者API应用 233
    6.3.2 新版消费者API应用 239
    6.4 自定义组件实现 247
    6.4.1 分区器 247
    6.4.2 序列化与反序列化 249
    6.5 Spring与Kafka整合应用 257
    6.5.1 生产者 259
    6.5.2 消费者 263
    6.6 小结 266
    第7章 Kafka Streams 267
    7.1 Kafka Streams简介 267
    7.2 Kafka Streams基本概念 268
    7.2.1 流 268
    7.2.2 流处理器 268
    7.2.3 处理器拓扑 268
    7.2.4 时间 269
    7.2.5 状态 270
    7.2.6 KStream和KTable 270
    7.2.7 窗口 271
    7.3 Kafka Streams API介绍 272
    7.3.1 KStream与KTable 272
    7.3.2 窗口操作 274
    7.3.3 连接操作 275
    7.3.4 变换操作 277
    7.3.5 聚合操作 279
    7.4 接口恶意访问自动检测 281
    7.4.1 应用描述 281
    7.4.2 具体实现 282
    7.5 小结 285
    第8章 Kafka数据采集应用 287
    8.1 Log4j集成Kafka应用 287
    8.1.1 应用描述 287
    8.1.2 具体实现 287
    8.2 Kafka与Flume整合应用 289
    8.2.1 Flume简介 290
    8.2.2 Flume与Kafka比较 291
    8.2.3 Flume的安装配置 291
    8.2.4 Flume采集日志写入Kafka 293
    8.3 Kafka与Flume和HDFS整合应用 294
    8.3.1 Hadoop安装配置 295
    8.3.2 Flume采集Kafka消息写入HDFS 298
    8.4 小结 301
    第9章 Kafka与ELK整合应用 303
    9.1 ELK环境搭建 304
    9.1.1 Elasticsearch安装配置 304
    9.1.2 Logstash安装配置 307
    9.1.3 Kibana安装配置 308
    9.2 Kafka与Logstash整合 309
    9.2.1 Logstash收集日志到Kafka 309
    9.2.2 Logstash从Kafka消费日志 310
    9.3 日志采集分析系统 312
    9.3.1 Flume采集日志配置 312
    9.3.2 Logstash拉取日志配置 313
    9.3.3 Kibana日志展示 314
    9.4 服务器性能监控系统 315
    9.4.1 Metricbeat安装 316
    9.4.2 采集信息存储到Elasticsearch 316
    9.4.3 加载beats-dashboards 318
    9.4.4 服务器性能监控系统具体实现 318
    9.5 小结 321
    第10章 Kafka与Spark整合应用 323
    10.1 Spark简介 323
    10.2 Spark基本操作 324
    10.2.1 Spark安装 325
    10.2.2 Spark shell应用 326
    10.2.3 spark-submit提交作业 327
    10.3 Spark在智能投顾领域应用 328
    10.3.1 应用描述 328
    10.3.2 具体实现 329
    10.4 热搜词统计 334
    10.4.1 应用描述 334
    10.4.2 具体实现 335
    10.5 小结 340
  • 内容简介:
      《Kafka入门与实践》以Kafka 0.10.1.1版本以基础,对Kafka的基本组件的实现细节及其基本应用进行了详细介绍,同时,通过对Kafka与当前大数据主流框架整合应用案例的讲解,进一步展现了Kafka在实际业务中的作用和地位。本书共10章,按照从抽象到具体、从点到线再到面的学习思维模式,由浅入深,理论与实践相结合,对Kafka进行了分析讲解。
      《Kafka入门与实践》中的大量实例来源于作者在实际工作中的实践,具有现实指导意义。相信读者阅读完本书之后,能够全面掌握Kafka的基本实现原理及其基本操作,能够根据书中的案例举一反三,解决实际工作和学习中的问题。此外,在阅读本书时,读者可以根据本书对Kafka理论的分析,再结合Kafka源码进行定位学习,了解Kafka的设计和思想以及更多的编码技巧。
      《Kafka入门与实践》适合应用Kafka的专业技术人员阅读,包括但不限于大数据相关应用的开发者、运维者和爱好者,也适合高等院校、培训结构相关专业的师生使用。
  • 作者简介:
      牟大恩,武汉大学硕士,曾先后在网易杭州研究院、掌门科技、优酷土豆集团担任高级开发工程师和资深开发工程师职务,目前就职于海通证券总部。有多年的Java开发及系统设计经验,专注于互联网金融及大数据应用相关领域。
  • 目录:
    第1章 Kafka简介 1
    1.1 Kafka背景 1
    1.2 Kafka基本结构 2
    1.3 Kafka基本概念 2
    1.4 Kafka设计概述 6
    1.4.1 Kafka设计动机 6
    1.4.2 Kafka特性 6
    1.4.3 Kafka应用场景 8
    1.5 本书导读 9
    1.6 小结 9
    第2章 Kafka安装配置 11
    2.1 基础环境配置 11
    2.1.1 JDK安装配置 11
    2.1.2 SSH安装配置 13
    2.1.3 ZooKeeper环境 15
    2.2 Kafka单机环境部署 18
    2.2.1 Windows环境安装Kafka 19
    2.2.2 Linux环境安装Kafka 19
    2.3 Kafka伪分布式环境部署 21
    2.4 Kafka集群环境部署 22
    2.5 Kafka Manager安装 22
    2.6 Kafka源码编译 25
    2.6.1 Scala安装配置 25
    2.6.2 Gradle安装配置 26
    2.6.3 Kafka源码编译 26
    2.6.4 Kafka导入Eclipse 30
    2.7 小结 31
    第3章 Kafka核心组件 33
    3.1 延迟操作组件 33
    3.1.1 DelayedOperation 33
    3.1.2 DelayedOperationPurgatory 35
    3.1.3 DelayedProduce 36
    3.1.4 DelayedFetch 38
    3.1.5 DelayedJoin 38
    3.1.6 DelayedHeartbeat 39
    3.1.7 DelayedCreateTopics 40
    3.2 控制器 40
    3.2.1 控制器初始化 41
    3.2.2 控制器选举过程 46
    3.2.3 故障转移 48
    3.2.4 代理上线与下线 49
    3.2.5 主题管理 51
    3.2.6 分区管理 54
    3.3 协调器 58
    3.3.1 消费者协调器 58
    3.3.2 组协调器 60
    3.4 网络通信服务 64
    3.4.1 Acceptor 65
    3.4.2 Processor 66
    3.4.3 RequestChannel 68
    3.4.4 SocketServer启动过程 69
    3.5 日志管理器 70
    3.5.1 Kafka日志结构 70
    3.5.2 日志管理器启动过程 77
    3.5.3 日志加载及恢复 79
    3.5.4 日志清理 80
    3.6 副本管理器 84
    3.6.1 分区 86
    3.6.2 副本 88
    3.6.3 副本管理器启动过程 89
    3.6.4 副本过期检查 90
    3.6.5 追加消息 92
    3.6.6 拉取消息 95
    3.6.7 副本同步过程 97
    3.6.8 副本角色转换 99
    3.6.9 关闭副本 101
    3.7 Handler 103
    3.8 动态配置管理器 104
    3.9 代理健康检测 106
    3.10 Kafka内部监控 107
    3.11 小结 110
    第4章 Kafka核心流程分析 111
    4.1 KafkaServer启动流程分析 111
    4.2 创建主题流程分析 115
    4.2.1 客户端创建主题 115
    4.2.2 分区副本分配 117
    4.3 生产者 121
    4.3.1 Eclipse运行生产者源码 121
    4.3.2 生产者重要配置说明 123
    4.3.3 OldProducer执行流程 124
    4.3.4 KafkaProducer实现原理 127
    4.4 消费者 140
    4.4.1 旧版消费者 140
    4.4.2 KafkaConsumer初始化 140
    4.4.3 消费订阅 144
    4.4.4 消费消息 145
    4.4.5 消费偏移量提交 149
    4.4.6 心跳探测 150
    4.4.7 分区数与消费者线程的关系 151
    4.4.8 消费者平衡过程 153
    4.5 小结 154
    第5章 Kafka基本操作实战 155
    5.1 KafkaServer管理 155
    5.1.1 启动Kafka单个节点 155
    5.1.2 启动Kafka集群 159
    5.1.3 关闭Kafka单个节点 160
    5.1.4 关闭Kafka集群 161
    5.2 主题管理 162
    5.2.1 创建主题 162
    5.2.2 删除主题 164
    5.2.3 查看主题 165
    5.2.4 修改主题 166
    5.3 生产者基本操作 168
    5.3.1 启动生产者 168
    5.3.2 创建主题 169
    5.3.3 查看消息 170
    5.3.4 生产者性能测试工具 170
    5.4 消费者基本操作 174
    5.4.1 消费消息 174
    5.4.2 单播与多播 179
    5.4.3 查看消费偏移量 181
    5.4.4 消费者性能测试工具 183
    5.5 配置管理 183
    5.5.1 主题级别配置 184
    5.5.2 代理级别设置 185
    5.5.3 客户端/用户级别配置 187
    5.6 分区操作 188
    5.6.1 分区Leader平衡 188
    5.6.2 分区迁移 190
    5.6.3 增加分区 194
    5.6.4 增加副本 195
    5.7 连接器基本操作 198
    5.7.1 独立模式 198
    5.7.2 REST风格API应用 201
    5.7.3 分布式模式 204
    5.8 Kafka Manager应用 209
    5.9 Kafka安全机制 211
    5.9.1 利用SASL/PLAIN进行身份认证 212
    5.9.2 权限控制 215
    5.10 镜像操作 218
    5.11 小结 219
    第6章 Kafka API编程实战 221
    6.1 主题管理 222
    6.1.1 创建主题 222
    6.1.2 修改主题级别配置 223
    6.1.3 增加分区 224
    6.1.4 分区副本重分配 224
    6.1.5 删除主题 225
    6.2 生产者API应用 225
    6.2.1 单线程生产者 226
    6.2.2 多线程生产者 231
    6.3 消费者API应用 233
    6.3.1 旧版消费者API应用 233
    6.3.2 新版消费者API应用 239
    6.4 自定义组件实现 247
    6.4.1 分区器 247
    6.4.2 序列化与反序列化 249
    6.5 Spring与Kafka整合应用 257
    6.5.1 生产者 259
    6.5.2 消费者 263
    6.6 小结 266
    第7章 Kafka Streams 267
    7.1 Kafka Streams简介 267
    7.2 Kafka Streams基本概念 268
    7.2.1 流 268
    7.2.2 流处理器 268
    7.2.3 处理器拓扑 268
    7.2.4 时间 269
    7.2.5 状态 270
    7.2.6 KStream和KTable 270
    7.2.7 窗口 271
    7.3 Kafka Streams API介绍 272
    7.3.1 KStream与KTable 272
    7.3.2 窗口操作 274
    7.3.3 连接操作 275
    7.3.4 变换操作 277
    7.3.5 聚合操作 279
    7.4 接口恶意访问自动检测 281
    7.4.1 应用描述 281
    7.4.2 具体实现 282
    7.5 小结 285
    第8章 Kafka数据采集应用 287
    8.1 Log4j集成Kafka应用 287
    8.1.1 应用描述 287
    8.1.2 具体实现 287
    8.2 Kafka与Flume整合应用 289
    8.2.1 Flume简介 290
    8.2.2 Flume与Kafka比较 291
    8.2.3 Flume的安装配置 291
    8.2.4 Flume采集日志写入Kafka 293
    8.3 Kafka与Flume和HDFS整合应用 294
    8.3.1 Hadoop安装配置 295
    8.3.2 Flume采集Kafka消息写入HDFS 298
    8.4 小结 301
    第9章 Kafka与ELK整合应用 303
    9.1 ELK环境搭建 304
    9.1.1 Elasticsearch安装配置 304
    9.1.2 Logstash安装配置 307
    9.1.3 Kibana安装配置 308
    9.2 Kafka与Logstash整合 309
    9.2.1 Logstash收集日志到Kafka 309
    9.2.2 Logstash从Kafka消费日志 310
    9.3 日志采集分析系统 312
    9.3.1 Flume采集日志配置 312
    9.3.2 Logstash拉取日志配置 313
    9.3.3 Kibana日志展示 314
    9.4 服务器性能监控系统 315
    9.4.1 Metricbeat安装 316
    9.4.2 采集信息存储到Elasticsearch 316
    9.4.3 加载beats-dashboards 318
    9.4.4 服务器性能监控系统具体实现 318
    9.5 小结 321
    第10章 Kafka与Spark整合应用 323
    10.1 Spark简介 323
    10.2 Spark基本操作 324
    10.2.1 Spark安装 325
    10.2.2 Spark shell应用 326
    10.2.3 spark-submit提交作业 327
    10.3 Spark在智能投顾领域应用 328
    10.3.1 应用描述 328
    10.3.2 具体实现 329
    10.4 热搜词统计 334
    10.4.1 应用描述 334
    10.4.2 具体实现 335
    10.5 小结 340
查看详情
相关图书 / 更多
Kafka入门与实践
KaplanSCHWESER2022FRM?Notes备考笔记二级·上(1-2套装共2本)
美国开普兰公司 编
Kafka入门与实践
Kafka进阶
赵渝强
Kafka入门与实践
KaliLinux高级渗透测试(原书第3版)
[加拿大]罗伯特·贝格斯(Robert Beggs) 著;[印度]维杰·库马尔·维卢(Vijay、Kumar、Velu、祝清意、蒋溢、罗文俊、李琪 译
Kafka入门与实践
Kali Linux高级渗透测试(原书第4版)
维杰·库马尔·维卢 著
Kafka入门与实践
Kafka权威指南(第2版)
[美]格温·沙皮拉(Gwen Shapira);[美]托德·帕利诺(Todd
Kafka入门与实践
Kafka实战
迪伦·斯科特(Dylan Scott)维克托·盖莫夫(Viktor Gamov)
Kafka入门与实践
Kafka基础架构与设计
智酷道捷内容与产品中心
Kafka入门与实践
Kali Linux渗透测试全流程详解
王佳亮
Kafka入门与实践
Kali Linux2 网络渗透测试实践指南 第2版
李华峰
Kafka入门与实践
Kaldi语音识别实战
陈果果
Kafka入门与实践
Kali安全渗透测试实践教程
张宝军、潘瑞芳、俞承杭、俞斌 著
Kafka入门与实践
Kaplan Writing Power (Third Edition)(Kaplan写作指导)
Nancy White 著