这个版本仍在开发中,目前尚未被认为是稳定的。要使用最新稳定版本,请使用 Spring for Apache Kafka 4.0.4spring-doc.cadn.net.cn

获取消费者 group.id

当在多个容器中运行相同的监听器代码时,可能需要能够确定记录来自哪个容器(通过其group.id消费者属性来标识)。spring-doc.cadn.net.cn

您可以在监听器线程上调用 KafkaUtils.getConsumerGroupId() 来执行此操作。 或者,您可以在方法参数中访问组ID。spring-doc.cadn.net.cn

@KafkaListener(id = "id", topicPattern = "someTopic")
public void listener(@Payload String payload, @Header(KafkaHeaders.GROUP_ID) String groupId) {
    ...
}
此功能在记录监听器和批次监听器中可用,这些监听器接收一个 List<?> 的记录。 它 在接收一个 ConsumerRecords<?, ?> 参数的批次监听器中可用。 在这种情况下,请使用 KafkaUtils 机制。