编辑:我也看到了与Kafka 9 Consumer API相同的行为。
我有一个简单的Kafaka 8.2.2 Producer,其enable主题创建属性设置为true。当创建具有不存在主题的事件时,它将创建一个新主题,但创建该主题的事件不会在Kafka中结束,并且返回的RecordMetadata没有错误。
public void receiveEvent(@RequestBody EventWrapper events) throws InterruptedException, ExecutionException, TimeoutException {
log.info("Sending " + events.getEvents().size() + " Events ");
for (Event event : events.getEvents()) {
log.info("Sending Event - " + event);
ProducerRecord<String, String> record = new ProducerRecord<>(event.getTopic(), event.getData());
Future<RecordMetadata> ack = eventProducer.send(record);
log.info("ACK - " + ack.get());
}
log.info("SENT!");
}
我有一个程序可以轮询新主题(我对Kafka 8中的动态/正则表达式主题代码感到满意)并找到了新的队列和订阅,它确实看到了后续事件,但从未第一次活动。
我也尝试过kafka-console-consumer脚本,它看起来完全相同。第一个事件从未见过,然后事件开始流动。
想法?
答案 0 :(得分:0)
原来你可以设置一个属性 props.put(“auto.offset.reset”,“earliest”);
设置完毕后,消费者确实收到了第一个主题事件。