【发布时间】:2017-06-19 02:35:44
【问题描述】:
目前我正在使用 spring kafkatemplate 向 kafka 主题发送字节消息。 在消费者方面,我们将此字节消息反序列化为适当的消息类型。 现在我们有一个要求,我们还需要将相关 ID 连同消息一起发送到 Kafka 主题。 我可以在 kafka 主题上发送相关 ID 以及字节消息并在消费者端单独检索它吗?
【问题讨论】:
标签: java spring apache-kafka
目前我正在使用 spring kafkatemplate 向 kafka 主题发送字节消息。 在消费者方面,我们将此字节消息反序列化为适当的消息类型。 现在我们有一个要求,我们还需要将相关 ID 连同消息一起发送到 Kafka 主题。 我可以在 kafka 主题上发送相关 ID 以及字节消息并在消费者端单独检索它吗?
【问题讨论】:
标签: java spring apache-kafka
即将发布的 Kafka v0.11 增加了对自定义消息头的支持。他们将是放入相关 ID 的主要候选人。
到那时,恐怕您必须将相关 id 放入消息值中。您的序列化器和反序列化器应将其与实际有效负载一起编码/解码到字节数组中。
【讨论】:
根据 Kafka Docs, CorrelationId 是用户提供的整数。它将由服务器在响应中传回,未经修改。它对于匹配客户端和服务器之间的请求和响应很有用。
如果我谈论 java api,那么在消费者方面你只能得到与消息相关的(topic_name,partition,offset,value)。
您可以将correlationId 作为消息的一部分发送,但您必须解析消息才能在消费者端获取它。
【讨论】: