Kafka 学习教程:从基础概念到实践操作
Kafka 学习教程:从基础概念到实践操作
Kafka是什么
Kafka 是一种分布式流事件处理平台,最初由 LinkedIn 开发,现在是 Apache 基金会的一部分。它就像是一个 “高性能的消息仓库”,可以高效地传递电商平台的订单数据、APP 的用户行为日志等信息。Kafka 支持高并发、高吞吐,还能持久化存储消息,是大数据和微服务架构中的重要组件。
一、Kafka 的核心组件
- 生产者(Producer):负责创建并向 Kafka 集群发送消息。比如电商系统中,订单生成模块就是生产者,它将订单信息发送到 Kafka。
- 消费者(Consumer):从 Kafka 集群读取消息。像数据分析系统可以作为消费者,获取订单消息进行分析。
- 主题(Topic):用于分类消息,类似于数据库中的表。不同类型的消息(如订单消息、物流消息)可以发送到不同的主题。
- 分区(Partition):一个主题可以分为多个分区,实现水平扩展。分区类似 “多车道”,能提升消息处理能力。
- Broker:即 Kafka 服务器,接受生产者的消息并存入磁盘,同时为消费者提供消息。多个 Broker 可以组成集群。
- ZooKeeper:Kafka 用它管理集群,比如进行 Broker 的加入、退出、Leader 选举等操作 。在 Kafka 较新版本中,也可以使用 KRaft 取代 ZooKeeper 进行集群管理。