搜索

34.5. 消息标头

download PDF

34.5.1. 消费者标头

使用 Kafka 的信息时可使用以下标头。

标头常量标头值类型描述

KafkaConstants.TOPIC

"kafka.TOPIC"

字符串

消息源自的主题

kafkaConstants.PARTITION

"kafka.PARTITION"

整数

存储消息的分区

KafkaConstants.OFFSET

"kafka.OFFSET"

Long

消息的偏移

KafkaConstants.KEY

"kafka.KEY"

对象

消息的密钥(如果已配置)

KafkaConstants.HEADERS

"kafka.HEADERS"

org.apache.kafka.common.header.Headers

记录标头

KafkaConstants.LAST_RECORD_BEFORE_COMMIT

"kafka.LAST_RECORD_BEFORE_COMMIT"

布尔值

提交前的最后一条记录(仅在 autoCommitEnable endpoint 参数为 false时可用)

KafkaConstants.LAST_POLL_RECORD

"kafka.LAST_POLL_RECORD"

布尔值

表示当前轮询请求中的最后一条记录(仅在 autoCommitEnable endpoint 参数为 falseallowManualCommittrue时可用)

KafkaConstants.MANUAL_COMMIT

"CamelKafkaManualCommit"

KafkaManualCommit

在使用 Kafka 消费者时,可用于强制手动偏移提交。

34.5.2. 生成者标头

在向 Kafka 发送消息前,您可以配置以下标头。

标头常量标头值类型描述

KafkaConstants.KEY

"kafka.KEY"

对象

必需 消息的密钥,以确保所有相关消息都位于同一分区中

KafkaConstants.OVERRIDE_TOPIC

"kafka.OVERRIDE_TOPIC"

字符串

发送消息的主题(override 和 take priority),标头不会被保留。

KafkaConstants.OVERRIDE_TIMESTAMP

"kafka.OVERRIDE_TIMESTAMP"

Long

ProducerRecord 也有一个关联的时间戳。如果用户提供时间戳,则制作者将调整与提供的时间戳的记录,并且不会保留标头。

KafkaConstants.PARTITION_KEY

"kafka.PARTITION_KEY"

整数

明确指定分区

如果要向动态主题发送消息,则使用 KafkaConstants.OVERRIDE_TOPIC 用作未与消息一起发送的一次性标头,因为它在制作者中删除。

在消息发送到 Kafka 后,以下标头将可用

标头常量标头值类型描述

KafkaConstants.KAFKA_RECORDMETA

"org.apache.kafka.clients.producer.RecordMetadata"

List<RecordMetadata>

元数据(仅在 recordMetadata 端点参数为 true时配置

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.