此版本仍在开发中,尚未被视为稳定版本。对于最新的稳定版本,请使用 Spring for Apache Kafka 3.3.0! |
用KafkaTemplate
接收
本节介绍如何使用KafkaTemplate
以接收消息。
从版本 2.8 开始,该模板有四个receive()
方法:
ConsumerRecord<K, V> receive(String topic, int partition, long offset);
ConsumerRecord<K, V> receive(String topic, int partition, long offset, Duration pollTimeout);
ConsumerRecords<K, V> receive(Collection<TopicPartitionOffset> requested);
ConsumerRecords<K, V> receive(Collection<TopicPartitionOffset> requested, Duration pollTimeout);
如您所见,您需要知道需要检索的记录的分区和偏移量;一个新的Consumer
为每个作创建 (和 Closed)。
使用最后两种方法,将单独检索每条记录,并将结果组合成ConsumerRecords
对象。
创建TopicPartitionOffset
s 的请求,则仅支持正的绝对偏移量。