Kafka进阶

Kafka进阶

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

图文并重详解Kafka,从思想原理,到体系架构,再到技术实现。

内容简介

本书是基于作者多年的教学与实践进行编写,重点介绍Kafka消息系统的核心原理与架构,内容涉及开发、运维、管理与架构。

全书共11章,第1章,介绍Kafka体系架构基础,包括消息系统的基本知识、Kafka的体系架构与ZooKeeper;第2章,介绍Kafka的环境部署,以及基本的应用程序开发;第3章,介绍Kafka的生产者及其运行机制,包括生产者的创建和执行过程、生产者的消息发送模式和生产者的高级特性等;第4章,介绍Kafka的消费者及其运行机制,包括消费者的消费模式、消费者组与消费者、消费者的偏移量与提交及消费者的高级特性等;第5章,介绍Kafka服务器端的核心原理,包括主题与分区、消息的持久性与传输保障、Kafka配额与日志的管理;第6章,介绍Kafka的流处理引擎Kafka Stream;第7章,介绍使用不同的工具监控Kafka,包括Kafka Manager、Kafka Tool、KafkaOffsetMonitor和JConsole;第8章至第11章,介绍Kafka与外部系统的集成,包括集成Flink、集成Storm、集成Spark和集成Flume。

作者简介

作者赵渝强,18年以上的IT行业从业经历,清华大学计算机软件专业毕业,京东大学大数据学院院长,Oracle中国有限公司高级技术顾问,华为官方认证讲师,曾在BEA、甲骨文、摩托罗拉等世界500强公司担任高级软件架构师或咨询顾问等要职,精通大数据、数据库、容器技术、中间件技术和Java技术。

章节目录

版权信息

内容简介

前言

第1章 Kafka体系架构基础

1.1 什么是消息系统

1.2 消息系统的分类

1.2.1 同步消息机制与异步消息机制

1.2.2 队列与主题

1.3 Kafka的体系架构

1.3.1 消息服务器

1.3.2 主题、分区与副本

1.3.3 生产者

1.3.4 消费者与消费者组

1.4 分布式协调服务ZooKeeper

1.4.1 ZooKeeper集群的架构

1.4.2 ZooKeeper的节点类型

1.4.3 ZooKeeper的观察机制

1.4.4 ZooKeeper的分布式锁

1.4.5 ZooKeeper在Kafka中的作用

1.5 准备实验环境

1.5.1 安装CentOS操作系统

1.5.2 配置CentOS操作系统

1.5.3 安装JDK

第2章 部署Kafka

2.1 部署ZooKeeper

2.1.1 ZooKeeper的核心配置文件

2.1.2 部署ZooKeeper的Standalone模式

2.1.3 部署ZooKeeper的集群模式

2.1.4 测试ZooKeeper集群

2.2 安装部署Kafka

2.2.1 单机单Broker的部署

2.2.2 单机多Broker的部署

2.2.3 多机多Broker的部署

2.2.4 使用命令行测试Kafka

2.3 Kafka配置参数详解

2.4 Kafka在ZooKeeper中保存的数据

2.5 开发客户端程序测试Kafka

2.5.1 开发Java版本的客户端程序

2.5.2 开发Scala版本的客户端程序

第3章 Kafka的生产者

3.1 Kafka生产者的执行过程

3.2 创建Kafka生产者

3.2.1 创建基本的消息生产者

3.2.2 发送自定义消息对象

3.3 生产者的消息发送模式

3.4 生产者的高级特性

3.4.1 生产者分区机制

3.4.2 生产者压缩机制

3.4.3 生产者拦截器

3.5 生产者的参数配置

第4章 Kafka的消费者

4.1 Kafka消费者的消费模式

4.1.1 消息的推送模式

4.1.2 消息的拉取模式

4.1.3 推送模式与拉取模式的区别

4.1.4 消息者组

4.2 创建Kafka消费者

4.2.1 创建基本的消息消费者

4.2.2 接收自定义消息对象

4.3 消费者与消费者组

4.3.1 消费者和消费者组与分区的关系

4.3.2 分区的重平衡

4.4 消费者的偏移量与提交

4.4.1 偏移量与重平衡

4.4.2 偏移量的提交方式

4.5 消费者的高级特性

4.5.1 消费者的分区策略

4.5.2 重平衡监听器

4.5.3 消费者的拦截器

4.5.4 消费者的优雅退出

4.6 消费者的参数配置

第5章 Kafka的服务器端

5.1 主题与分区

5.1.1 主题和分区的关系

5.1.2 主题的管理

5.1.3 使用KafkaAdminClient

5.2 消息的持久性

5.2.1 Kafka消息持久性概述

5.2.2 Kafka的持久化原理解析

5.2.3 持久化的读写流程

5.2.4 为什么要建立分段和索引

5.3 消息的传输保障

5.3.1 生产者的ack机制

5.3.2 消费者与高水位线

5.4 副本和Leader副本的选举

5.5 Kafka配额的管理

5.6 Kafka的日志删除与压缩

5.6.1 日志的删除

5.6.2 日志的压缩

5.6.3 清理的实现细节

5.7 Kafka与ZooKeeper

5.7.1 ZooKeeper扮演的角色

5.7.2 Kafka在ZooKeeper中存储的数据

5.8 服务器端参数设置

第6章 流处理引擎Kafka Stream

6.1 Kafka Stream的体系架构

6.1.1 为什么需要Kafka Stream

6.1.2 Kafka Stream的体系架构

6.1.3 执行Kafka Stream示例程序

6.2 开发自己的Kafka Stream应用程序

6.3 Kafka Stream中的数据模型

6.3.1 KStream与KTable

6.3.2 状态管理

6.4 Kafka Stream中的窗口计算

6.4.1 时间

6.4.2 窗口

第7章 监控Kafka

7.1 Kafka的监控指标

7.2 使用Kafka客户端监控工具

7.2.1 Kafka Manager

7.2.2 Kafka Tool

7.2.3 KafkaOffsetMonitor

7.2.4 JConsole

7.3 监控ZooKeeper

第8章 Kafka与Flink集成

8.1 Flink的体系架构

8.1.1 Flink中的数据集

8.1.2 Flink的生态圈体系

8.1.3 Flink的体系架构

8.2 安装部署Flink Standalone模式

8.2.1 Flink Standalone模式的部署

8.2.2 在Standalone模式上执行Flink任务

8.3 Flink DataSet API算子

8.4 Flink DataStream API算子

8.5 集成Flink与Kafka

8.5.1 将Kafka作为Flink的Source Connector

8.5.2 将Kafka作为Flink的Sink Connector

第9章 Kafka与Storm集成

9.1 离线计算与流式计算

9.2 Apache Storm的体系架构

9.3 部署Apache Storm

9.3.1 部署Storm的伪分布模式

9.3.2 部署Storm的全分布模式

9.3.3 Storm HA模式

9.4 执行Apache Storm任务

9.4.1 执行WordCountTopology

9.4.2 Storm的其他管理命令

9.5 开发自己的Storm任务

9.5.1 Storm Topology任务处理的数据模型

9.5.2 开发自己的WordCountTopology任务

9.6 集成Kafka与Storm

9.6.1 Storm从Kafka中接收数据

9.6.2 测试Kafka与Storm的集成

9.6.3 Storm将数据输出到Kafka

第10章 Kafka与Spark集成

10.1 Spark基础

10.1.1 Spark的特点

10.1.2 Spark的体系架构

10.2 安装部署Spark环境

10.2.1 伪分布模式的单节点环境部署

10.2.2 全分布模式的环境安装部署

10.3 执行Spark任务

10.3.1 使用spark-submit提交任务

10.3.2 交互式命令行工具spark-shell

10.4 Spark的核心编程模型

10.4.1 什么是RDD

10.4.2 RDD的算子

10.4.3 开发自己的WordCount程序

10.5 流式计算引擎Spark Streaming

10.5.1 什么是Spark Streaming

10.5.2 离散流

10.5.3 开发自己的Spark Streaming程序

10.6 集成Kafka与Spark Streaming

10.6.1 基于Receiver的方式

10.6.2 直接读取的方式

第11章 Kafka与Flume集成

11.1 Apache Flume基础

11.1.1 Apache Flume的体系架构

11.1.2 Apache Flume的安装和部署

11.2 Flume的Source组件

11.3 Flume的Channel组件

11.4 Flume的Sink组件

11.5 集成Kafka与Flume

Kafka进阶是2022年由电子工业出版社出版,作者赵渝强。

得书感谢您对《Kafka进阶》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
Python编程轻松进阶 电子书
阅读本书,理解代码底层逻辑,像职业程序员一样使用Python。
声乐进阶教程 电子书
本书共八章,第一章声乐演唱基础,介绍在正式学习声乐演唱前需要了解的一些基本常识及理论概念;第二至三章发声练习,介绍声乐演唱前所必须要掌握的一些基本方法,是为声乐演唱打下良好基础的前提;第四章声乐作品分析与处理,主要针对声乐演唱方面的作品做全方位的解读;第五章作品演唱与解析;分别对具有代表性的中国声乐作品及外国声乐作品进行重点讲解;第六至八章合唱讲解部分,分别对合唱基础、发声练习及合唱作品进行了讲解
掌控AI进阶之路 电子书
近年来,各个学校陆续开设了丰富多彩的社团活动。其中,人工智能的学习被广为关注,对应地,各个学校采购了五花八门的设备,开始了人工智能的推广。为了构建系统化、生态化的人工智能学习环境,本书选择掌控板作为载体,推广编程教育,介绍人工智能应用。本书作为科创教育丛书人工智能系列中学版图书,选取9个项目从自然语言处理、图像识别、物联网、机器学习这4个应用方向展开,循序渐进地介绍了掌控板、掌控板配套硬件、AI摄
认知行为疗法进阶 电子书
北师大心理学博士郭召良实践心理学治疗方法,心理咨询实践步步详解、拿来即用!
云原生架构进阶实战 电子书
凝练云原生的核心思想和理念,通过讲述云原生敏捷基础架构构建过程和DevOps方法,并结合实际案例,为你展现云原生的实战场景和步骤。