什么是 Kafka
Kafka 是由 Linkedin
公司开发的,它是一个分布式的,支持多分区、多副本,基于 Zookeeper 的分布式消息流平台,它同时也是一款开源的基于发布订阅模式的消息引擎系统。
kafka的外在表现很像消息系统,允许发布和订阅消息流,但是它和传统的消息系统有很大的差异:
- 首先,kafka是个现代分布式系统,以集群的方式运行,可以自由伸缩
- 其次,kafka可以按照要求存储数据,保存多久都可以
- 第三,流式处理将数据处理的层次提示到了新高度,消息系统只会传递数据。kafka的流式处理能力可以让我们用很少的代码就能动态的处理派生流和数据集。所以,kafka不仅仅是个消息中间件
kafka不仅仅是个消息中间件,同时它是个流平台,这个平台上可以发布和订阅数据流(kafka的流,有一个单独的包stream的处理),并把它们保存起来,进行处理,这个就是kafka作者的设计理念。今天之所以要聊Kafka,是因为我们公司来了位阿里P8大神,他分享了一份纯手写“Kafka笔记”,我只能用两个字来形容:膜拜!崇拜!需要的朋友下方自领呀
——【点此直接领取】
- Kafka入门
- 为什么选择Kafka
- Kafka的安装、管理和配置Kafka的集群
- 第一个Kafka程序
- Kafka的生产者
- Kafka的消费者
- 深入理解Kafka
- 可靠的数据传递
- Spring和Kafka的整合
- SpringBoot和Kafka的整合
- Kafka实战之削峰填谷
- 数据管道和流式处理(了解即可)
声明:关于这份大神纯手写的“Kafka文档”,本文在这只是粗略介绍(篇幅有限),但每部分的内容有详细的解释。且后方还有kafka从基础-进阶-高阶等44问的面试题(含解析),以及最后自己纯手绘的知识架构脑图(可作为梳理参考)。
01 kafka入门
1.1 什么是kafka
1.2 kafka中的基本概念
1.2.1 消息和批次
1.2.2 主题和分区
1.2.3 生产者和消费者、偏移量、消费者群组
1.2.4 Broker和集群
1.2.5 保留消息