kafka 常用知识点

文章目录

  • 前言
    • [kafka 常用知识点](#kafka 常用知识点)
      • [1. kafka 概念](#1. kafka 概念)
      • [2. 消息共享和广播](#2. 消息共享和广播)
      • [3. 分区和副本数量奇偶数](#3. 分区和副本数量奇偶数)

前言

如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易啊^ _ ^。

而且听说点赞的人每天的运气都不会太差,实在白嫖的话,那欢迎常来啊!!!


kafka 常用知识点

1. kafka 概念

Kafka 是一个 分布式、高吞吐、可持久化的消息队列系统.。

  • 生产者(Producer):写信的人,负责"投递消息"。
  • 消费者(Consumer):收信的人,负责"接收消息"。
  • 主题(Topic):信箱,按主题投放和接收信。
  • Broker(代理):Kafka 服务器,就是邮局,负责存储和投递。
  • 分区(Partition):每个信箱的子格子,信按顺序放入格子中。
  • 消费组(Consumer Group):一群消费者在"轮流收信"。

2. 消息共享和广播

Kafka 的消息共享(负载)和广播(全量)消费行为,是通过自定义的消费组 group.id来决定的。

示例:

不同的 group.id(广播模式):

bash 复制代码
@KafkaListener(topics = "log-topic", groupId = "group-A") // A
@KafkaListener(topics = "log-topic", groupId = "group-B") // B

相同的 group.id(集群分摊模式)

bash 复制代码
@KafkaListener(topics = "log-topic", groupId = "group-A") // A1
@KafkaListener(topics = "log-topic", groupId = "group-A") // A2

3. 分区和副本数量奇偶数

属性 是否建议奇数 说明
分区数 ❌ 无要求 根据并发需求、消费者数量设定即可
副本数 ✅ 建议奇数 多数副本机制保证高可用(如 3 副本)

4、Kafka 主题管理相关命令示例(基于 kafka-topics.sh

创建主题,3个分区,副本数2

bash 复制代码
kafka-topics.sh --create --topic my_topic --partitions 3 --replication-factor 2 --bootstrap-server localhost:9092

查看所有主题

bash 复制代码
kafka-topics.sh --list --bootstrap-server localhost:9092

查看某个主题详细信息

bash 复制代码
kafka-topics.sh --describe --topic my_topic --bootstrap-server localhost:9092

删除主题(需要broker配置允许删除)

bash 复制代码
kafka-topics.sh --delete --topic my_topic --bootstrap-server localhost:9092
相关推荐
编啊编程啊程1 天前
gRPC从0到1系列【20】
java·rpc·kafka·dubbo·nio
程序猿John1 天前
RabbitMQ概念 与 工作原理
分布式·rabbitmq
Hello.Reader1 天前
在运行中的 Kafka 集群渐进式启用安全零停机实战手册(KRaft/Broker 通用)
分布式·安全·kafka
飘飞雪1 天前
深入浅出kafka:kafka演进以及核心功能介绍
数据库·分布式·kafka
不太可爱的叶某人1 天前
【学习笔记】kafka权威指南——第1章 初识kafka
笔记·学习·kafka
不太可爱的叶某人2 天前
【学习笔记】kafka权威指南——第3章 kafka生产者—向kafka写入数据
笔记·学习·kafka
励志成为糕手2 天前
Spark Shuffle:分布式计算的数据重分布艺术
大数据·分布式·spark·性能调优·数据倾斜
三口吃掉你2 天前
Git分布式版本控制工具
分布式·git
yunmi_2 天前
分布式文件存储系统FastDFS(入门)
java·分布式·maven·fastdfs
爱敲代码的TOM2 天前
详解Kafka2-进阶机制
kafka