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

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

1、topic (主题 )

topic是逻辑概念

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

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

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

2、partition(分区)

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

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

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

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

分区的目的 分散磁盘的IO

可以再增加分区

相关推荐
mftang7 小时前
EtherCAT协议:从“飞读飞写”机制到分布式时钟同步的实时以太网架构深度解析
分布式·架构·ethercat·分布式时钟·从站控制器
ShineWinsu11 小时前
对于Redis:Hash类型的解析
c++·redis·分布式·缓存·面试·hash·哈希表
东方芷兰13 小时前
Agent 技术摘要 03 —— 基座模型、推理模型、Flash、联邦学习、分布式机器学习
人工智能·分布式·机器学习
程序猿乐锅14 小时前
【黑马点评 | 第十一篇】关注 Feed 流实现
java·数据库·redis·分布式·后端·缓存·maven
ly768915 小时前
ISR 收缩与 HW 推进:副本同步的边界条件与 UnderReplicated 排障
数据库·kafka·c#·linq·isr·hw·副本同步
j7~16 小时前
【C++标准项目】C++基于protobuf的发布订阅式消息队列(篇一):项目概述+环境搭建
分布式·消息队列·rabbitmq·gtest·protobuf·muduo·sqlites
今年下半年1 天前
【Spring Boot】多种存储文件(FastDFS / MinIO / 阿里云 OSS)接入设计说明(附源码)
spring boot·分布式·中间件·简单工厂模式·策略模式
ShineWinsu1 天前
对于Redis:string类型的解析
java·c++·redis·分布式·缓存·面试·string
仍然.2 天前
RabbitMQ---可靠性传输
网络·分布式·rabbitmq
灯澜忆梦2 天前
【RabbitMQ #13】 | 延迟消息
分布式·rabbitmq·ruby