59.6. 消息标头


59.6.1. 消费者标头

当消耗来自 Kafka 的消息时,可以使用以下标头。

Expand
标头常数标头值类型描述

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 消费者时强制手动偏移提交。

59.6.2. 制作者标头

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

Expand
标头常数标头值类型描述

KafkaConstants.KEY

"kafka.KEY"

对象

必需 消息的键,以确保所有相关消息都在同一分区中

KafkaConstants.OVERRIDE_TOPIC

"kafka.OVERRIDE_TOPIC"

字符串

发送消息的主题(覆盖和优先权),并且标头不会被保留。

KafkaConstants.OVERRIDE_TIMESTAMP

"kafka.OVERRIDE_TIMESTAMP"

Long

ProducerRecord 也有一个关联的时间戳。如果用户提供时间戳,则生成者将使用提供的时间戳标记记录,且不会保留标头。

KafkaConstants.PARTITION_KEY

"kafka.PARTITION_KEY"

整数

明确指定分区

如果要将消息发送到动态主题,则使用 KafkaConstants.OVERRIDE_TOPIC 作为其用作不发送消息的一次性标头,作为其在生成者中删除的一次性标头。

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

Expand
标头常数标头值类型描述

KafkaConstants.KAFKA_RECORDMETA

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

List<RecordMetadata>

元数据(只在 recordMetadata endpoint 参数为 true时才配置

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat