Kafka开篇

前言

从本篇开始对个人Kafka学习做一个总结, 目标有这么几个。

  1. 从概念架构角度, 对消息中间件形成概要认知;
  2. 从使用角度, 掌握其常见用法;
  3. 从性能角度, 探究其高性能实现机制;

消息中间件的用途

  1. 从消息生产和消费的角度, 平衡消费者和消费者的速率差。基于该点可以做到削峰填谷, 比如流量突发, 日志处理等。
  2. 从系统解耦的角度, 解耦生产者和消费者的时空耦合。基于该点可以解耦系统依赖, 进而实现异步化处理。

消息中间件的概念架构

  1. 消息中间件类似于消息的临时中转站;
  2. 中转站需要接收生产者发送的消息, 并将消息以某种形式发送给消费者;
  3. 如果QoS级别要做到不丢失消息, 中转站则必须支持持久化存储;
  4. 如果中间件工作于分布式系统中, 则需要考虑可用性和伸缩性问题, 涉及集群元数据和存储数据;

Kafka的概念架构

  1. Kafka工作在分布式环境下;
  2. 输入消息和输出消息都通过broker来完成;
  3. Kafka通过topic和partion两级颗粒度管理消息;
  4. 元数据的高可用和伸缩通过Zookeeper来保证, 高版本中移除了Zookeeper的依赖, 由每个存储节点来维护;
  5. 存储数据的高可用和伸缩通过Partion和Replicaton Set来保证;

小结

本文作为Kafka系列的开篇, 介绍消息中间件的场景用途和概念架构,Kafka的顶层架构。后续会对整个过程相关的对象, 以及收发过程中存在的问题做更进一步的介绍, 感谢您的阅读。

相关推荐
__土块__11 小时前
一次企业知识库同步系统改造复盘:从全量拉取到增量消息的演进与多级缓存一致性保障
kafka·多级缓存·缓存一致性·系统改造·知识库同步·增量消息·mysql binlog
却话巴山夜雨时i18 小时前
Java面试实录:从Spring Boot到Kafka的技术探讨
spring boot·微服务·kafka·grafana·prometheus·java面试
Abcdzzr20 小时前
2026/4/6 Windows安装Kafka
分布式·kafka
Devin~Y20 小时前
高并发内容社区实战面试:从 Java 基础到 Spring Cloud、Kafka、Redis、RAG 搜索全解析
java·spring boot·redis·spring cloud·kafka·向量数据库·rag
学到头秃的suhian21 小时前
Kafka高性能
kafka
aP8PfmxS21 天前
从零学习Kafka:数据存储
分布式·学习·kafka
bIo7lyA8v2 天前
从零学习Kafka:集群架构和基本概念
学习·架构·kafka
学到头秃的suhian2 天前
Kafka高可用
kafka
DYuW5gBmH2 天前
Kafka 成功消费消息的完整流程图
分布式·kafka·流程图
学到头秃的suhian3 天前
消息队列发送消息场景分析
kafka