本文说明消息队列Kafka版涉及的专有名词和术语,帮助您更好地理解相关概念并使用该产品。

Apache Kafka
一款开源的分布式数据流处理平台,可以实时发布、订阅、存储和处理数据流。更多信息,请参见Apache Kafka
消息队列Kafka版
一款由阿里云提供的Apache Kafka全托管服务,具备免部署、免运维、低成本、高弹性、高可靠、高吞吐等优势。更多信息,请参见什么是消息队列Kafka版?
ZooKeeper
一款开源的分布式应用程序协调服务。在消息队列Kafka版中,ZooKeeper主要用于集群管理、配置管理、Leader选举。ZooKeeper是消息队列Kafka版的一部分,您无需感知ZooKeeper。
Broker
一个消息队列Kafka版服务端节点。消息队列Kafka版提供全托管服务,会根据您的实例的流量规格自动变化Broker的数量和配置。您无需关心具体的Broker信息。
集群
由多个Broker组成的集合。
实例
一个独立的消息队列Kafka版资源实体,对应一个集群。
VPC实例
仅提供专有网络VPC接入点,只能通过专有网络VPC访问。
公网/VPC实例
提供公网接入点和专有网络VPC接入点,可以通过公网访问,也可以通过专有网络VPC访问。
升级大版本
跨版本升级,例如将消息队列Kafka版实例的版本从0.10.x升级至2.x。更多信息,请参见升级实例版本
升级小版本
非跨版本升级,例如将消息队列Kafka版实例的版本从0.10升级至0.10.2,或者从0.10.2升级至0.10.2内核优化版。更多信息,请参见升级实例版本
接入点
Producer或Consumer连接消息队列Kafka版时使用的地址,由Broker的URI和端口号拼接而成。更多信息,请参见接入点对比
消息
消息队列Kafka版中信息传递的载体。消息可以是网站的页面访问、服务器的日志,也可以是和CPU、内存相关的系统资源信息,但对于消息队列Kafka版,消息就是一个字节数组。
消息保留时长
在磁盘容量充足的情况下,消息的最长保留时间。
  • 磁盘容量不足(即磁盘水位达到85%)时,将提前删除旧的消息,以确保服务可用性。
  • 默认值为72小时,取值范围为24小时~480小时。
最大消息大小
消息队列Kafka版能收发的消息的最大值。
  • 消息的最大值上限为10 MB,不区分标准版实例和专业版实例。
  • 修改该配置前,请确认修改值是否匹配生产和消费客户端相应配置。
发布/订阅模型
一种异步的服务间通讯模型。发布者无需了解订阅者的存在,直接将消息发送到特定的主题。订阅者无需了解发布者的存在,直接从特定的主题接收消息。消息队列Kafka版支持发布/订阅模型。更多信息,请参见消息队列Kafka版的发布/订阅模型
订阅关系
Topic被Group订阅的情况。消息队列Kafka版支持查看订阅了指定Topic的在线Group的情况,非在线Group的情况无法查看。
Producer
消息队列Kafka版发送消息的应用。
Consumer
消息队列Kafka版接收消息的应用。
Group
一组具有相同Group ID的Consumer。当一个Topic被同一个Group的多个Consumer消费时,每一条消息都只会被投递到一个Consumer,实现消费的负载均衡。通过Group,您可以确保一个Topic的消息被并行消费。
Topic
消息的主题,用于分类消息。
Topic引流
消息队列Kafka版集群横向扩容完成后,使Topic流量重新均匀分布到扩容后的集群上的行为。更多信息,请参见Topic引流
分区
消息的分区,用于存储消息。一个Topic由一个或多个分区组成,每个分区中的消息存储于一个或多个Broker上。
位点
消息到达分区时被指定的序列号。
最小位点
分区的最小位点,即当前分区的首条消息的位点。如何查看当前分区的最小位点,请参见查看分区状态
最大位点
分区的最大位点,即当前分区的最新消息的位点。如何查看当前分区的最大位点,请参见查看分区状态
消费位点
分区被当前Consumer消费了的消息的最大位点。如何查看消费位点,请参见查看消费状态
最近消费时间
Group最近消费的消息被发布到消息队列Kafka版服务端的存储时间。如果消费没有堆积,那么这个时间接近发送时间。
堆积量
当前分区下的消息堆积总量,即最大位点减去消费位点的值。堆积量是一个关键指标,如果发现堆积量较大,则Consumer可能产生了阻塞,或者消费速度跟不上生产速度。此时需要分析Consumer的运行状况,尽力提升消费速度。您可以清除所有堆积消息,从最大位点开始消费,或按时间点进行位点重置。具体操作,请参见重置消费位点
Local存储
使用原生Apache Kafka的ISR复制算法的存储引擎。如果您有特殊需求,例如Compact、幂等、事务、分区顺序消息等,建议您选择Local存储。更多信息,请参见存储引擎对比
云存储
使用阿里云云盘算法的存储引擎,充分发挥阿里云底层存储优势,其弹性伸缩、可靠性、可用性、成本都要优于Local存储。因此,在绝大多数情况下,建议您使用云存储。更多信息,请参见存储引擎对比
cleanup.policy
日志清理策略。当您选择了Local存储时,才需配置日志清理策略。消息队列Kafka版支持以下日志清理策略:
  • Delete:默认的消息清理策略。在磁盘容量充足的情况下,保留在最长保留时间范围内的消息;在磁盘容量不足时(一般磁盘使用率超过85%视为不足),将提前删除旧消息,以保证服务可用性。
  • Compact:使用Kafka Log Compaction日志清理策略。Log Compaction清理策略保证相同Key的消息,最新的value值一定会被保留。主要适用于系统宕机后恢复状态,系统重启后重新加载缓存等场景。例如,在使用Kafka Connect或Confluent Schema Registry时,需要使用Kafka Compact Topic存储系统状态信息或配置信息。
    注意 Compact Topic一般只用在某些生态组件中,例如Kafka Connect或Confluent Schema Registry,其他情况的消息收发请勿为Topic设置该属性。具体信息,请参见消息队列Kafka版Demo库
普通消息
默认情况下,保证相同Key的消息分布在同一个分区中,且分区内消息按照发送顺序存储。集群重启或者宕机时,会导致极少量乱序。更多信息,请参见存储引擎对比
分区顺序消息
默认情况下,保证相同Key的消息分布在同一个分区中,且分区内消息按照发送顺序存储。集群宕机时,不会造成消息乱序。但是会出现部分分区发送消息失败,等到宕机机器重新上线后即可恢复正常。更多信息,请参见存储引擎对比
Connector
消息队列Kafka版的组件,用于消息队列Kafka版和其他阿里云服务之间的数据同步。更多信息,请参见Connector概述
标签
用于识别消息队列Kafka版资源。您可以将作用相同的消息队列Kafka版的资源归类,便于搜索和资源聚合。更多信息,请参见标签管理
RAM
阿里云提供的管理阿里云用户身份与阿里云资源访问权限的服务。RAM只针对消息队列Kafka版控制台和API操作,客户端使用SDK收发消息与RAM无关。更多信息,请参见权限控制概述
ACL
消息队列Kafka版提供的管理SASL用户和客户端使用SDK收发消息权限的服务,和开源Apache Kafka保持一致。ACL只针对客户端使用SDK收发消息,与消息队列Kafka版控制台和API操作无关。更多信息,请参见权限控制概述