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

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

1、topic (主题 )

topic是逻辑概念

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

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

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

2、partition(分区)

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

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

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

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

分区的目的 分散磁盘的IO

可以再增加分区

相关推荐
数据智能老司机14 小时前
CockroachDB权威指南——CockroachDB SQL
数据库·分布式·架构
数据智能老司机15 小时前
CockroachDB权威指南——开始使用
数据库·分布式·架构
数据智能老司机15 小时前
CockroachDB权威指南——CockroachDB 架构
数据库·分布式·架构
IT成长日记15 小时前
【Kafka基础】Kafka工作原理解析
分布式·kafka
州周17 小时前
kafka副本同步时HW和LEO
分布式·kafka
爱的叹息19 小时前
主流数据库的存储引擎/存储机制的详细对比分析,涵盖关系型数据库、NoSQL数据库和分布式数据库
数据库·分布式·nosql
程序媛学姐19 小时前
SpringKafka错误处理:重试机制与死信队列
java·开发语言·spring·kafka
千层冷面20 小时前
RabbitMQ 发送者确认机制详解
分布式·rabbitmq·ruby
ChinaRainbowSea20 小时前
3. RabbitMQ 的(Hello World) 和 RabbitMQ 的(Work Queues)工作队列
java·分布式·后端·rabbitmq·ruby·java-rabbitmq
敖正炀20 小时前
基于RocketMQ的可靠消息最终一致性分布式事务解决方案
分布式