gpt4 book ai didi

java - 如何从特定偏移量到特定偏移量的kafka主题中使用数据?

转载 作者:行者123 更新时间:2023-11-30 06:41:01 24 4
gpt4 key购买 nike

我需要将特定的偏移量消耗到特定的结束偏移量!! consumer.seek() 从特定偏移量读取数据,但我需要将数据从偏移量检索到 tooffset !任何帮助将不胜感激,在此先感谢。

    ConsumerRecords<String, String> records = consumer.poll(100);
if(flag) {
consumer.seek(new TopicPartition("topic-1", 0), 90);
flag = false;
}

最佳答案

要从起始偏移量到结束偏移量读取消息,首先需要使用 seek() 将消费者移动到所需的起始位置,然后使用 poll() 直到您达到所需的结束偏移量。

例如,从偏移量 100 到 200 消费:

String topic = "test";
TopicPartition tp = new TopicPartition(topic, 0);

try (KafkaConsumer<String, String> consumer = new KafkaConsumer<>(configs)) {
consumer.subscribe(Arrays.asList(topic), new ConsumerRebalanceListener() {
@Override
public void onPartitionsRevoked(Collection<TopicPartition> partitions) {}

@Override
public void onPartitionsAssigned(Collection<TopicPartition> partitions) {
// Move to the desired start offset
consumer.seek(tp, 100L);
}
});
boolean run = true;
long lastOffset = 200L;
while (run) {
ConsumerRecords<String, String> crs = consumer.poll(Duration.ofMillis(100L));
for (ConsumerRecord<String, String> record : crs) {
System.out.println(record);
if (record.offset() == lastOffset) {
// Reached the end offsey, stop consuming
run = false;
break;
}
}
}
}

关于java - 如何从特定偏移量到特定偏移量的kafka主题中使用数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56413483/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com