热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

kafka计算机专业读法_Kafka源码解析与实战/大数据技术丛书

导语内容提要由王亮编著的《Kafka源码解析与实战大数据技术丛书》系统介绍Kafka的实现原理和应用方法,并介绍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.2  ReplicaManager

4.3.3  OffsetManager

4.3.4  KafkaScheduler

4.3.5  KafkaApis

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.3  PartitionStateMachine模块的启动

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

5.4.1  NoOpLeaderSelector

5.4.2  ……

5.4.3  ReassignedPartitionLeader-Selector

5.4.4  PreferredReplicaPartition-LeaderSelector

5.4.5  ControlledShutdownLeader-Selector

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

5.5.1  副本状态的分类

5.5.2  副本状态的转换

5.5.3  ReplicaStateMachine模块的启动

5.6  KafkaController内部的监听器

5.6.1  TopicChangeListener

5.6.2  AddPartitionsListener

5.6.3  PartitionsReassignedListener

5.6.4  ReassignedPartitionsIsr-ChangeListener

5.6.5  PreferredReplicaElection-Listener

5.6.6  BrokerChangeListener

5.6.7  DeleteTopicsListener

5.7  Kafka集群的负载均衡流程

5.8  Kafka集群的Topic删除流程

5.9  KafkaController的通信模块

5.1 0 本章小结

第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.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.4  Kafka和Spark的集成

9.4.1  Spark简介

9.4.2  示例代码

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  本章小结



推荐阅读
  • Web开发框架概览:Java与JavaScript技术及框架综述
    Web开发涉及服务器端和客户端的协同工作。在服务器端,Java是一种优秀的编程语言,适用于构建各种功能模块,如通过Servlet实现特定服务。客户端则主要依赖HTML进行内容展示,同时借助JavaScript增强交互性和动态效果。此外,现代Web开发还广泛使用各种框架和库,如Spring Boot、React和Vue.js,以提高开发效率和应用性能。 ... [详细]
  • 基于Net Core 3.0与Web API的前后端分离开发:Vue.js在前端的应用
    本文介绍了如何使用Net Core 3.0和Web API进行前后端分离开发,并重点探讨了Vue.js在前端的应用。后端采用MySQL数据库和EF Core框架进行数据操作,开发环境为Windows 10和Visual Studio 2019,MySQL服务器版本为8.0.16。文章详细描述了API项目的创建过程、启动步骤以及必要的插件安装,为开发者提供了一套完整的开发指南。 ... [详细]
  • DAO(Data Access Object)模式是一种用于抽象和封装所有对数据库或其他持久化机制访问的方法,它通过提供一个统一的接口来隐藏底层数据访问的复杂性。 ... [详细]
  • IOS Run loop详解
    为什么80%的码农都做不了架构师?转自http:blog.csdn.netztp800201articledetails9240913感谢作者分享Objecti ... [详细]
  • 深入解析 Lifecycle 的实现原理
    本文将详细介绍 Android Jetpack 中 Lifecycle 组件的实现原理,帮助开发者更好地理解和使用 Lifecycle,避免常见的内存泄漏问题。 ... [详细]
  • 如何在Java中使用DButils类
    这期内容当中小编将会给大家带来有关如何在Java中使用DButils类,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。D ... [详细]
  • MySQL的查询执行流程涉及多个关键组件,包括连接器、查询缓存、分析器和优化器。在服务层,连接器负责建立与客户端的连接,查询缓存用于存储和检索常用查询结果,以提高性能。分析器则解析SQL语句,生成语法树,而优化器负责选择最优的查询执行计划。这一流程确保了MySQL能够高效地处理各种复杂的查询请求。 ... [详细]
  • 深入解析Struts、Spring与Hibernate三大框架的面试要点与技巧 ... [详细]
  • Unity与MySQL连接过程中出现的新挑战及解决方案探析 ... [详细]
  • 优化后的标题:深入探讨网关安全:将微服务升级为OAuth2资源服务器的最佳实践
    本文深入探讨了如何将微服务升级为OAuth2资源服务器,以订单服务为例,详细介绍了在POM文件中添加 `spring-cloud-starter-oauth2` 依赖,并配置Spring Security以实现对微服务的保护。通过这一过程,不仅增强了系统的安全性,还提高了资源访问的可控性和灵活性。文章还讨论了最佳实践,包括如何配置OAuth2客户端和资源服务器,以及如何处理常见的安全问题和错误。 ... [详细]
  • Python 数据可视化实战指南
    本文详细介绍如何使用 Python 进行数据可视化,涵盖从环境搭建到具体实例的全过程。 ... [详细]
  • 本文详细介绍了如何在 Django 项目中使用 Admin 管理后台,包括创建超级用户、启动项目、管理数据模型和修改用户密码等步骤。 ... [详细]
  • 本文深入解析了 Kubernetes 控制平面(特别是 API 服务器)与集群节点之间的通信机制,并对其通信路径进行了详细分类。旨在帮助用户更好地理解和定制其安装配置,从而增强网络安全性,确保集群的稳定运行。 ... [详细]
  • 在分析和解决 Keepalived VIP 漂移故障的过程中,我们发现主备节点配置如下:主节点 IP 为 172.16.30.31,备份节点 IP 为 172.16.30.32,虚拟 IP 为 172.16.30.10。故障表现为监控系统显示 Keepalived 主节点状态异常,导致 VIP 漂移到备份节点。通过详细检查配置文件和日志,我们发现主节点上的 Keepalived 进程未能正常运行,最终通过优化配置和重启服务解决了该问题。此外,我们还增加了健康检查机制,以提高系统的稳定性和可靠性。 ... [详细]
  • AngularJS 进阶指南:第三部分深入解析
    在本文中,我们将深入探讨 AngularJS 的指令模型,特别是 `ng-model` 指令。`ng-model` 指令用于将 HTML 元素与应用程序数据进行双向绑定,支持多种数据类型验证,如数字、电子邮件地址和必填项检查。此外,我们还将介绍如何利用该指令优化表单验证和数据处理流程,提升开发效率和用户体验。 ... [详细]
author-avatar
郭恭彦_522
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有