天翼云分布式消息服务Kafka中Broker、Topic、Producer等术语解释
文档简介:
分布式消息服务 Kafka 是一个分布式、高吞吐量、高可扩展性的消息队列服务,广泛用于日志收集、监控数据聚合、流式数据处理、在线和离线分析等大数据领域。
分布式消息服务Kafka 针对开源的 Kafka 提供全托管服务,彻底解决开源产品长期以来的痛点,用户只需专注于业务开发,无需部署运维,低成本、更弹性、更可靠。
基本术语
Broker
kafka集群包含一个活多个消息处理服务器,该服务器成为Broker,提供数据刷盘等核心功能。可以横向扩展、在线扩容以提高集群性能。
Topic
每条发布到Kafka 集群的消息都有一个主题,这个主题被称为 Topic。通过 Topic 可以对消息进行分类。每个 Topic 可以由一个或多个分区(Partition)组成,存储于一个或多个 Broker 上。
分区(partition)
消息分区是物理上的概念,一个Topic可以分为多个partition,每个partition是一个有序的队列。partition中的每条消息都会被分配一个有序的id(offset)。
Producer
消息和数据生成者,一般为应用调用API进行消息生产,并向Kafka的一个Topic发布消息。
Consumer
消息订阅者,也成为消息消费者,负责向 Kafka Broker 读取消息并进行消费。
消费组(Consumer Group)
一类Consumer的集合名称,这类Consumer通常消费一类消息,且消费逻辑一致,Consumer Group 和 Topic 的关系是 N:N,同一个 Consumer Group 可以订阅多个 Topic,同一个 Topic 也可以被多个 Consumer Group 订阅。