【发布时间】:2016-05-28 08:24:16
【问题描述】:
编辑:我也看到了与 Kafka 9 Consumer API 完全相同的行为。
我有一个简单的 Kafaka 8.2.2 Producer,其启用主题创建属性设置为 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 脚本,它看到的完全一样。第一个事件从未见过,然后事件开始流动。
想法?
【问题讨论】:
标签: java apache-kafka