深入理解Kafka 核心设计与实践原理

深入理解Kafka 核心设计与实践原理
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者:
2019-01
版次: 1
ISBN: 9787121359026
定价: 99.00
装帧: 平装
开本: 其他
页数: 443页
228人买过
  • 本书从Kafka的基本概念入手,主要从生产端、消费端、服务端等3个方面进行全面的陈述,主要内容包括Kafka的基本使用方式、生产者客户端的使用、消费者客户端的使用、主题与分区、日志存储、深入原理解析、监控的设计、不错应用的扩展以及与Spark的集成等。虽然Kafka的内核使用Scala语言编写,但是本书基本以Java语言作为主要的示例语言,方便绝大多数读者的理解。本书虽然没有明确的界定,但是总体上可以隐性的划分为三个部分:基础篇、原理篇和扩展篇,以这种循序渐进的方式更能让读者容易接受。 朱忠华,目前主要从事消息中间件相关的研发工作,对RabbitMQ、Kafka等有着自己独特的理解。 章初识Kafka

    1.1基本概念

    1.2安装与配置

    1.3生产与消费

    1.4服务端参数配置

    1.5总结

    第2章生产者

    2.1客户端开发

    2.1.1必要的参数配置

    2.1.2消息的发送

    2.1.3序列化

    2.1.4分区器

    2.1.5生产者拦截器

    2.2原理分析

    2.2.1整体架构

    2.2.2元数据的更新

    2.3重要的生产者参数

    2.4总结

    第3章消费者

    3.1消费者与消费组

    3.2客户端开发

    3.2.1必要的参数配置

    3.2.2订阅主题与分区

    3.2.3反序列化

    3.2.4消息消费

    3.2.5位移提交

    3.2.6控制或关闭消费

    3.2.7指定位移消费

    3.2.8再均衡

    3.2.9消费者拦截器

    3.2.10多线程实现

    3.2.11重要的消费者参数

    3.3总结

    第4章主题与分区

    4.1主题的管理

    4.1.1创建主题

    4.1.2分区副本的分配

    4.1.3查看主题

    4.1.4修改主题

    4.1.5配置管理

    4.1.6主题端参数

    4.1.7删除主题

    4.2初识KafkaAdminClient

    4.2.1基本使用

    4.2.2主题合法性验证

    4.3分区的管理

    4.3.1优先副本的选举

    4.3.2分区重分配

    4.3.3复制限流

    4.3.4修改副本因子

    4.4如何选择合适的分区数

    4.4.1性能测试工具

    4.4.2分区数越多吞吐量就越高吗

    4.4.3分区数的上限

    4.4.4考量因素

    4.5总结

    第5章日志存储

    5.1文件目录布局

    5.2日志格式的演变

    5.2.1v0版本

    5.2.2v1版本

    5.2.3消息压缩

    5.2.4变长字段

    5.2.5v2版本

    5.3日志索引

    5.3.1偏移量索引

    5.3.2时间戳索引

    5.4日志清理

    5.4.1日志删除

    5.4.2日志压缩

    5.5磁盘存储

    5.5.1页缓存

    5.5.2磁盘I/O流程

    5.5.3零拷贝

    5.6总结

    第6章深入服务端

    6.1协议设计

    6.2时间轮

    6.3延时操作

    6.4控制器

    6.4.1控制器的选举及异常恢复

    6.4.2优雅关闭

    6.4.3分区leader的选举

    6.5参数解密

    6.5.1broker.id

    6.5.2bootstrap.servers

    6.5.3服务端参数列表

    6.6总结

    第7章深入客户端

    7.1分区分配策略

    7.1.1RangeAssignor分配策略

    7.1.2RoundRobinAssignor分配策略

    7.1.3StickyAssignor分配策略

    7.1.4自定义分区分配策略

    7.2消费者协调器和组协调器

    7.2.1旧版消费者客户端的问题

    7.2.2再均衡的原理

    7.3__consumer_offsets剖析

    7.4事务

    7.4.1消息传输保障

    7.4.2幂等

    7.4.3事务

    7.5总结

    第8章可靠性探究

    8.1副本剖析

    8.1.1失效副本

    8.1.2ISR的伸缩

    8.1.3LEO与HW

    8.1.4Leader Epoch的介入

    8.1.5为什么不支持读写分离

    8.2日志同步机制

    8.3可靠性分析

    8.4总结

    第9章Kafka应用

    9.1命令行工具

    9.1.1消费组管理

    9.1.2消费位移管理

    9.1.3手动删除消息

    9.2Kafka Connect

    9.2.1独立模式

    9.2.2REST API

    9.2.3分布式模式

    9.3Kafka Mirror Maker

    9.4Kafka Streams

    9.5总结

    0章Kafka监控

    10.1监控数据的来源

    10.1.1OneMinuteRate

    10.1.2获取监控指标

    10.2消费滞后

    10.3同步失效分区

    10.4监控指标说明

    10.5监控模块

    10.6总结

    1章不错应用

    11.1过期时间(TTL)

    11.2延时队列

    11.3死信队列和重试队列

    11.4消息路由

    11.5消息轨迹

    11.6消息审计

    11.7消息代理

    11.7.1快速入门

    11.7.2REST API介绍及示例

    11.7.3服务端配置及部署

    11.7.4应用思考

    11.8消息中间件选型

    11.8.1各类消息中间件简述

    11.8.2选型要点概述

    11.8.3消息中间件选型误区探讨

    11.9总结

    2章Kafka与Spark的集成

    12.1Spark的安装及简单应用

    12.2Spark编程模型

    12.3Spark的运行结构

    12.4Spark Streaming简介

    12.5Kafka与Spark Streaming的整合

    12.6Spark SQL

    12.7Structured Streaming

    12.8Kafka与Structured Streaming的整合

    12.9总结

    附录AKafka源码环境搭建


  • 内容简介:
    本书从Kafka的基本概念入手,主要从生产端、消费端、服务端等3个方面进行全面的陈述,主要内容包括Kafka的基本使用方式、生产者客户端的使用、消费者客户端的使用、主题与分区、日志存储、深入原理解析、监控的设计、不错应用的扩展以及与Spark的集成等。虽然Kafka的内核使用Scala语言编写,但是本书基本以Java语言作为主要的示例语言,方便绝大多数读者的理解。本书虽然没有明确的界定,但是总体上可以隐性的划分为三个部分:基础篇、原理篇和扩展篇,以这种循序渐进的方式更能让读者容易接受。
  • 作者简介:
    朱忠华,目前主要从事消息中间件相关的研发工作,对RabbitMQ、Kafka等有着自己独特的理解。
  • 目录:
    章初识Kafka

    1.1基本概念

    1.2安装与配置

    1.3生产与消费

    1.4服务端参数配置

    1.5总结

    第2章生产者

    2.1客户端开发

    2.1.1必要的参数配置

    2.1.2消息的发送

    2.1.3序列化

    2.1.4分区器

    2.1.5生产者拦截器

    2.2原理分析

    2.2.1整体架构

    2.2.2元数据的更新

    2.3重要的生产者参数

    2.4总结

    第3章消费者

    3.1消费者与消费组

    3.2客户端开发

    3.2.1必要的参数配置

    3.2.2订阅主题与分区

    3.2.3反序列化

    3.2.4消息消费

    3.2.5位移提交

    3.2.6控制或关闭消费

    3.2.7指定位移消费

    3.2.8再均衡

    3.2.9消费者拦截器

    3.2.10多线程实现

    3.2.11重要的消费者参数

    3.3总结

    第4章主题与分区

    4.1主题的管理

    4.1.1创建主题

    4.1.2分区副本的分配

    4.1.3查看主题

    4.1.4修改主题

    4.1.5配置管理

    4.1.6主题端参数

    4.1.7删除主题

    4.2初识KafkaAdminClient

    4.2.1基本使用

    4.2.2主题合法性验证

    4.3分区的管理

    4.3.1优先副本的选举

    4.3.2分区重分配

    4.3.3复制限流

    4.3.4修改副本因子

    4.4如何选择合适的分区数

    4.4.1性能测试工具

    4.4.2分区数越多吞吐量就越高吗

    4.4.3分区数的上限

    4.4.4考量因素

    4.5总结

    第5章日志存储

    5.1文件目录布局

    5.2日志格式的演变

    5.2.1v0版本

    5.2.2v1版本

    5.2.3消息压缩

    5.2.4变长字段

    5.2.5v2版本

    5.3日志索引

    5.3.1偏移量索引

    5.3.2时间戳索引

    5.4日志清理

    5.4.1日志删除

    5.4.2日志压缩

    5.5磁盘存储

    5.5.1页缓存

    5.5.2磁盘I/O流程

    5.5.3零拷贝

    5.6总结

    第6章深入服务端

    6.1协议设计

    6.2时间轮

    6.3延时操作

    6.4控制器

    6.4.1控制器的选举及异常恢复

    6.4.2优雅关闭

    6.4.3分区leader的选举

    6.5参数解密

    6.5.1broker.id

    6.5.2bootstrap.servers

    6.5.3服务端参数列表

    6.6总结

    第7章深入客户端

    7.1分区分配策略

    7.1.1RangeAssignor分配策略

    7.1.2RoundRobinAssignor分配策略

    7.1.3StickyAssignor分配策略

    7.1.4自定义分区分配策略

    7.2消费者协调器和组协调器

    7.2.1旧版消费者客户端的问题

    7.2.2再均衡的原理

    7.3__consumer_offsets剖析

    7.4事务

    7.4.1消息传输保障

    7.4.2幂等

    7.4.3事务

    7.5总结

    第8章可靠性探究

    8.1副本剖析

    8.1.1失效副本

    8.1.2ISR的伸缩

    8.1.3LEO与HW

    8.1.4Leader Epoch的介入

    8.1.5为什么不支持读写分离

    8.2日志同步机制

    8.3可靠性分析

    8.4总结

    第9章Kafka应用

    9.1命令行工具

    9.1.1消费组管理

    9.1.2消费位移管理

    9.1.3手动删除消息

    9.2Kafka Connect

    9.2.1独立模式

    9.2.2REST API

    9.2.3分布式模式

    9.3Kafka Mirror Maker

    9.4Kafka Streams

    9.5总结

    0章Kafka监控

    10.1监控数据的来源

    10.1.1OneMinuteRate

    10.1.2获取监控指标

    10.2消费滞后

    10.3同步失效分区

    10.4监控指标说明

    10.5监控模块

    10.6总结

    1章不错应用

    11.1过期时间(TTL)

    11.2延时队列

    11.3死信队列和重试队列

    11.4消息路由

    11.5消息轨迹

    11.6消息审计

    11.7消息代理

    11.7.1快速入门

    11.7.2REST API介绍及示例

    11.7.3服务端配置及部署

    11.7.4应用思考

    11.8消息中间件选型

    11.8.1各类消息中间件简述

    11.8.2选型要点概述

    11.8.3消息中间件选型误区探讨

    11.9总结

    2章Kafka与Spark的集成

    12.1Spark的安装及简单应用

    12.2Spark编程模型

    12.3Spark的运行结构

    12.4Spark Streaming简介

    12.5Kafka与Spark Streaming的整合

    12.6Spark SQL

    12.7Structured Streaming

    12.8Kafka与Structured Streaming的整合

    12.9总结

    附录AKafka源码环境搭建


查看详情
12
相关图书 / 更多
深入理解Kafka 核心设计与实践原理
深入理解移动互联网
吴功宜 吴英 编著
深入理解Kafka 核心设计与实践原理
深入实施“四个育人”,彰显本科人才培养特色——云南大学本科教育改革与创新优秀论文集
主编唐旭光
深入理解Kafka 核心设计与实践原理
深入浅出C语言程序设计(第3版·微课版)
李俊·c;强振平;荣剑;张晴晖;赵毅力;钟丽辉
深入理解Kafka 核心设计与实践原理
深入浅出C#(视频教学版)
赵云
深入理解Kafka 核心设计与实践原理
深入实践Kotlin元编程
霍丙乾 著
深入理解Kafka 核心设计与实践原理
深入北方的小路(布克奖震撼杰作。人生在世,行走于地狱屋顶,凝望花朵。余华力荐“了不起的小说”!)
[澳]理查德·弗兰纳根 著;新经典 出品
深入理解Kafka 核心设计与实践原理
深入学习习近平关于科技创新的重要论述
科学技术部编写组 著
深入理解Kafka 核心设计与实践原理
深入浅出IoT:完整项目通关实战
[英]吉姆·贝内特(Jim Bennett) 著;柴火创客空间 译;[美]珍·福克斯(Jen Fox);[美]珍·卢珀(Jen Looper)
深入理解Kafka 核心设计与实践原理
深入浅出SSD:固态存储核心技术、原理与实战 第2版
SSDFans 胡波 石亮 岑彪
深入理解Kafka 核心设计与实践原理
深入地心 少儿科普 新华正版
英国尤斯伯恩出版公司
深入理解Kafka 核心设计与实践原理
深入理解FFmpeg
刘歧 赵军 杜金房 赵文杰 宋韶颍
深入理解Kafka 核心设计与实践原理
深入人心:数字产品设计的底层逻辑
林婕
您可能感兴趣 / 更多
深入理解Kafka 核心设计与实践原理
RabbitMQ实战指南
朱忠华 著