kafka--kafka的基本概念-topic和partition

一、kafka的基本概念-topic和partition

1、topic (主题 )

topic是逻辑概念

  • 以Topic机制来对消息进行分类的,同一类消息属于同一个Topic,你可以将每个topic看成是一个消息队列。

  • 生产者(producer)将消息发送到相应的Topic,而消费者(consumer)通过从Topic拉取消息来消费

  • kafka中是要求消费者主动拉取消息消费的,它并不会主动推送消息

2、partition(分区)

每个topic可以有多个分区,这是kafka为了提高并发量而设计的一种机制:

一个topic下的多个分区可以并发接收消息,同样的也能供消费者并发拉取消息,即分区之间互不干扰,这样的话,有多少个分区就可以有多大的并发量。

所以,如果要更准确的打比方,一个分区就是一个消息队列,只不过这些消息队列同属于一种消息分类

分区是有序,主题不是有序的

分区的目的 分散磁盘的IO

可以再增加分区

相关推荐
_waylau11 小时前
鸿蒙架构师修炼之道-面向对象的分布式架构
分布式·华为·架构·架构师·harmonyos·鸿蒙
Francek Chen13 小时前
【大数据存储与管理】NoSQL数据库:03 NoSQL与关系数据库的比较
大数据·数据库·分布式·nosql
路飞说AI13 小时前
分布式事务最佳实践:基于kafka实现的最终一致性方案
kafka
FeBaby16 小时前
Java 高并发场景下 Redis 分布式锁(UUID+Lua)最佳实践
java·redis·分布式
richard_yuu18 小时前
工控场景落地|分布式协调与动态重配置管理,如何实现产线不停机升级?
分布式
Devin~Y18 小时前
互联网大厂Java面试:Spring Boot/Redis/Kafka/K8s 可观测 + RAG(向量检索/Agent)三轮追问实录
java·spring boot·redis·kafka·kubernetes·spring mvc·webflux
MoFe118 小时前
【.net core】【RabbitMq】rabbitmq在.net core中的简单使用
分布式·rabbitmq·.netcore
路飞说AI18 小时前
Kafka消息不丢失全攻略
kafka
何中应18 小时前
在windows本地部署RabbitMQ
分布式·消息队列·rabbitmq
Wild API19 小时前
按任务轻重做模型分流的实战思路
分布式·微服务·架构