Kafka MQ 主题和分区

Kafka MQ 主题和分区

Kafka 的消息通过 主题 进行分类。主题就好比数据库的表,或者文件系统里的文件夹。主题可以被分为若干个 分区 ,一个分区就是一个提交日志。消息以追加的方式写入分区,然 后以先入先出的顺序读取。要注意,由于一个主题一般包含几个分区,因此无法在整个主 题范围内保证消息的顺序,但可以保证消息在单个分区内的顺序。图 1-5 所示的主题有 4 个分区,消息被追加写入每个分区的尾部。Kafka 通过分区来实现数据冗余和伸缩性。分 区可以分布在不同的服务器上,也就是说,一个主题可以横跨多个服务器,以此来提供比 单个服务器更强大的性能。

图 1-5:包含多个分区的主题表示

我们通常会使用流这个词来描述 Kafka 这类系统的数据。很多时候,人们把一个主题的数 据看成一个流,不管它有多少个分区。流是一组从生产者移动到消费者的数据。当我们讨 论流式处理时,一般都是这样描述消息的。Kafka Streams、Apache Samza 和 Storm 这些框 架以实时的方式处理消息,也就是所谓的流式处理。我们可以将流式处理与离线处理进行 比较,比如 Hadoop 就是被设计用于在稍后某个时刻处理大量的数据。第 11 章将会介绍流 式处理。

相关推荐
Wang's Blog2 小时前
RabbitMQ: 消息中间件技术选型
分布式·rabbitmq
闲人编程6 小时前
中间件开发与生命周期管理
缓存·中间件·生命周期·日志·扩展·codecapsule
古城小栈10 小时前
.proto文件:跨语言通信 的 协议基石
分布式·微服务
song50113 小时前
鸿蒙 Flutter 日志系统:分级日志与鸿蒙 Hilog 集成
图像处理·人工智能·分布式·flutter·华为
Wang's Blog13 小时前
RabbitMQ:消息可靠性保障之消费端 ACK 机制与限流策略解析
分布式·rabbitmq
松☆13 小时前
深入实战:Flutter + OpenHarmony 分布式软总线通信完整实现指南
分布式·flutter
武子康14 小时前
Java-194 RabbitMQ 分布式通信怎么选:SOA/Dubbo、微服务 OpenFeign、同步重试与 MQ 异步可靠性落地
大数据·分布式·微服务·消息队列·rabbitmq·dubbo·异步
song50114 小时前
鸿蒙 Flutter 插件测试:多版本兼容性自动化测试
人工智能·分布式·flutter·华为·开源鸿蒙
韩凡14 小时前
JAVA微服务与分布式(概念版)
java·分布式·微服务
添加shujuqudong1如果未回复14 小时前
用蜣螂优化(DBO)算法攻克置换流水车间调度问题
中间件