龙空技术网

关于Kafka知识,一篇带你学会!Apache Kafka互联网实战整理PDF

Java开发技术分享 197

前言:

今天你们对“apache日志轮询”大约比较注意,咱们都需要知道一些“apache日志轮询”的相关知识。那么小编同时在网络上收集了一些有关“apache日志轮询””的相关知识,希望各位老铁们能喜欢,小伙伴们快快来学习一下吧!

前言

2011年年初,美国领英公司(Linkedln)开源了一款基础架构软件,以奥地利作家弗兰兹·卡夫卡(Franz Kafka)的名字命名,之后Linkedln将其贡献给Apache基金会,随后该软件于2012年10月成功完成孵化并顺利晋升为Apache顶级项目---这便是大名鼎鼎的ApacheKafka。

作者介绍

胡夕,北航计算机硕士毕业,目前就职于-家互联网金融公司,开源技术爱好者。曾任职于IBM、搜狗、微博等公司。对Kafka及其他开源流处理技术与框架有深刻认识,同时也是国内活跃的Kafka代码贡献者。对Kafka原理、运行机制以及应用开发都有较深的研究。

本书是涵盖Apache Kafka各方面的具有实践指导意义的工具书和参考书。作者结合典型的使用场景,对Kafka整个技术体系进行了较为全面的讲解,以便读者能够举一反三,直接应用于实践。同时,本书还对Kafka的设计原理及其流式处理组件进行了较深入的探讨,并给出了翔实的案例。

本书共分为10章:第1章全面介绍消息引擎系统以及Kafka的基本概念与特性,快速带领读者走进Kafka的世界;第2章简要回顾了Apache Kafka的发展历史;第3章详细介绍了Kafka集群环境的搭建;第4、5章深入探讨了Kafka客户端的使用方法;第6章带领读者一览Kafka内部设计原理;第7~9章以实例的方式讲解了Kafka集群的管理、监控与调优;第10章介绍了Kafka新引入的流式处理组件。

由于整个PDF文档比较全面,内容比较多,篇幅不允许,下面以截图方式展示 。如有需要获取资料文档的朋友 可以关注+转发后台私信【666】即可获得免费领取方式。

目录第一章 认识Apache Kafka

Apache Kafka是由Apache软件基金会开发的一个开源消息系统项目,该项目的目标是为处理实时数据提供一个统一、高通量、低等待的平台。

Kafka是一个分布式的、分区的、多复本的日志提交服务。它通过一种独一无二的设计提供了一个消息系统的功能

1.1 Kafka快速入门1.2 消息引擎系统1.3 Kafka概要设计1.4 Kafka基本概念与术语1.5 Kafka使用场景1.6 本章小结

第二章 kafka 发展历史

Kafka设计之初是为了解决Linkedln公司数据管道(datapipe)问题

KafkaProducer 的工作逻辑:将消息封装成 ProducerRecord 对象,然后使用KafkaProducer.send 将消息发送出去,事实上,其拿到消息后会通过序列化,根据本地缓存的元数据,确定目标分区,KafkaProducer 专门有一个 Selector I/O线程,负责将缓存区的消息分批次发送给Kafka broker

2.1 Kafka的历史2.2 Kafka版本变迁2.3 如何选择Kafka版本2.4 Kafka与Confluent2.5 本章小结第三章 Kafka线上环境部署

典型的生产环境至少需要部署多个节点共同组成一个分布式集群整体为我们提供服务。本章将会详细讨论生产环境中集群的安装、配置与验证。不过在此之前,我们还需要解决3个方面的问题。它们分别是操作系统的选型、硬件规划和容量规划

3.1 集群环境规划3.2 伪分布式环境安装3.3 多节点环境安装3.4 验证部署3.5 参数设置3.6 本章小结第四章 producer开发

不论Kafka如何演变,万变不离其宗,它一定有一些外部的生产者(producer)应用程序给自己发送消息,然后还有一些外部的消费者(consumer)应用程序读取 producer 发送的消息。

本章着重讨论 Kafka 的 producer 设计以及基于 Java 版本 producer 的开发与使用。

4.1 producer概览4.2 构造producer4.3 消息分区机制4.4 消息序列化4.5 producer拦截器4.6 无消息丢失配置4.7 消息压缩4.8 多线程处理4.9 旧版本 producer4.10 本章小结第五章 consumer开发

不论Kafka如何演变,万变不离其宗的是它定有 一些外部的生产 者(producer) 应用程序给Kaftka发送消息,然后还有一些外部的消费者(consumer) 应用程序读取producer发送的消息。

5.1 consumer概览5.2 构建consumer5.3 订阅topic5.4 消息轮询5.5 位移管理5.6 重平衡(rebalance)5.7 解序列化5.8 多线程消费实例5.9 独立consumer5.10 旧版本 consumer5.11 本章小结第六章Kafka设计原理

前五章涵盖了Apache Kafka 在生产环境中使用的方方面面,详细讨论了如何安装部署Kafka,如何使用Kafka提供的Java版本producer API发送消息,以及如何使用Java版本consumer API消费消息。本章将介绍Kafka内部设计原理,带领读者深入了解Kafka内部结构。

6.1 broker端设计架构6.2 producer端设计6.3 consumer端设计6.4 实现精确一次处理语义6.5 本章小结第七章 管理Kafka集群

本章重点讲解Apache Kafka集群的运维管理、参数配置、工具脚本和常见问题的排查等内容,将基本涵盖Kafka运维相关的各个方面,从实践角度诠释主要脚本工具的使用方法。本章内容也为第8章“监控Kafka集群”内容的展开奠定了基础。

7.1 集群管理7.2 topic管理7.3 topic动态配置管理7.4 consumer相关管理7.5 topic分区管理7.6 Kafka常见脚本工具7.7 API方式管理集群7.8 MirrorMaker7.9 Kafka安全第八章 监控Kafka集群

对于运维人员而言,维护生产环境的一个重要内容就是监控集群的运行与状态。当出现问题时,系统管理员能做的只是从海量的日志中尝试定位异常行为发生的根本原因。这种排查问题的方法通常是低效率的,因此需要我们引入完善的监控指标以及框架来帮助管理Kafka集群。

本章将重点讲解ApacheKafka集群监控指标以及如何监控Kafka集群,同时也会讨论如何利用这些指标诊断问题以及目前主流的第三方图形化监控框架的使用方法。

8.1 集群健康度检查8.2 MBean监控8.3 broker端JMX监控8.4 clients端JMX监控8.5 JVM监控8.6 OS监控8.7 主流监控框架8.8 本章小结第九章 调优Kafka集群

在第8章中,我们学习了监控 Apache Kafka 集群的方法以及目前各种主流的监控框架。本章将查看如何调优Apache Kafka 集群

9.1 引言9.2 确定调优目标9.3 集群基础调优9.4 调优吞吐量9.5 调优延时9.6 调优持久性9.7 调优可用性9.8 本章小结第十章 Kafka Connect与Kafka Streams

终于来到最后一章了。在前面的章节中我们系统地学习了实际使用Apache Kafka的各个方面。事实上,到目前为止,读者应该已经能够独立地在生产环境中部署一套完整的Kafka集群。本章我们将关注Apache Kafka 0.10.0.0版本新引入的两个特性Kafka Connet和Kafka Streams。

10.1 引言10.2 Kafka Connect10.3 Kafka Streams10.4 本章小结推荐序

由于整个PDF文档比较全面,内容比较多,篇幅不允许,下面以截图方式展示 。如有需要获取资料文档的朋友 可以关注+转发后台私信我【666】即可获得免费领取方式。

标签: #apache日志轮询