热门标签 | 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  本章小结



推荐阅读
  • 深入理解Kafka服务端请求队列中请求的处理
    本文深入分析了Kafka服务端请求队列中请求的处理过程,详细介绍了请求的封装和放入请求队列的过程,以及处理请求的线程池的创建和容量设置。通过场景分析、图示说明和源码分析,帮助读者更好地理解Kafka服务端的工作原理。 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • 【重识云原生】第四章云网络4.8.3.2节——Open vSwitch工作原理详解
    2OpenvSwitch架构2.1OVS整体架构ovs-vswitchd:守护程序,实现交换功能,和Linux内核兼容模块一起,实现基于流的交换flow-basedswitchin ... [详细]
  • 云原生应用最佳开发实践之十二原则(12factor)
    目录简介一、基准代码二、依赖三、配置四、后端配置五、构建、发布、运行六、进程七、端口绑定八、并发九、易处理十、开发与线上环境等价十一、日志十二、进程管理当 ... [详细]
  • BPM是什么软件?1、BPM是BusinessProcessManagement的简称,译为业务流程管理,它是一种以规范化的构造端到端的卓越业务流程为中心以持续的提高组织业务绩效为 ... [详细]
  • TiDB | TiDB在5A级物流企业核心系统的应用与实践
    TiDB在5A级物流企业核心系统的应用与实践前言一、业务背景科捷物流概况神州金库简介二、现状与挑战神州金库现有技术体系业务挑战应对方案三、TiDB解决方案测试迁移收益问题四、说在最 ... [详细]
  • Voicewo在线语音识别转换jQuery插件的特点和示例
    本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • 利用Visual Basic开发SAP接口程序初探的方法与原理
    本文介绍了利用Visual Basic开发SAP接口程序的方法与原理,以及SAP R/3系统的特点和二次开发平台ABAP的使用。通过程序接口自动读取SAP R/3的数据表或视图,在外部进行处理和利用水晶报表等工具生成符合中国人习惯的报表样式。具体介绍了RFC调用的原理和模型,并强调本文主要不讨论SAP R/3函数的开发,而是针对使用SAP的公司的非ABAP开发人员提供了初步的接口程序开发指导。 ... [详细]
  • linux进阶50——无锁CAS
    1.概念比较并交换(compareandswap,CAS),是原⼦操作的⼀种,可⽤于在多线程编程中实现不被打断的数据交换操作࿰ ... [详细]
  • k8s+springboot+Eureka如何平滑上下线服务
    k8s+springboot+Eureka如何平滑上下线服务目录服务平滑上下线-k8s版本目录“上篇介绍了springboot+Euraka服务平滑上下线的方式,有部分小伙伴反馈k ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了VoLTE端到端业务详解|VoLTE用户注册流程相关的知识,希望对你有一定的参考价值。书籍来源:艾怀丽 ... [详细]
  • 译文:如何使用SocketAsyncEventArgs类(How to use the SocketAsyncEventArgs class)
    转载自:http:blog.csdn.nethulihuiarticledetails3244520原文:HowtousetheSocketAsyncE ... [详细]
  • UML 包图
    什么是包包可直接理解为命名空间,文件夹,是用来组织图形的封装,包图可以用来表述功能组命名空间的组织层次。•在面向对象软件开发的视角中&#x ... [详细]
  • python网络编程 day27 网络编程初识 ——socket
    一、内容回顾1、两个内置函数(装饰器)及类中的魔术方法 ... [详细]
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社区 版权所有