kafka 重放 重播 从某个时间点或者offset开始消费
Posted leon0
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了kafka 重放 重播 从某个时间点或者offset开始消费相关的知识,希望对你有一定的参考价值。
转自: https://www.jianshu.com/p/932663e9a226
consumer.subscribe(topicA); consumer.poll(100);//正常订阅topic和poll消息 Set<TopicPartition> assignments = consumer.assignment();//获取consumer所分配的分区信息 Map<TopicPartition, Long> query = new HashMap<>();//构造offsetsForTimes参数,通过时间戳找到offset for (TopicPartition topicPartition : assignments) { System.out.println(topicPartition); query.put(topicPartition, 1550804131000L); } Map<TopicPartition, OffsetAndTimestamp> result = consumer.offsetsForTimes(query); for (Map.Entry<TopicPartition, OffsetAndTimestamp> entry : result.entrySet()) { System.out.println(entry); consumer.seek(entry.getKey(), entry.getValue().offset());//每个topic的partition都seek到执行的offset }
以上是关于kafka 重放 重播 从某个时间点或者offset开始消费的主要内容,如果未能解决你的问题,请参考以下文章