我们正在apache kafka 0.10.0.x和spring 3.x上运行,并且不能使用spring kafka,因为它在Spring Framework版本4.x中受支持。
因此,我们使用本地的Kafka Producer API生成消息。
现在,我所关心的是我的制作人的表现。事情是我相信producer.send真正是建立到Kafka代理的连接的调用,然后将消息放入缓冲区,然后尝试发送,然后可能在中调用您提供的回调方法producer.send()。
现在,KafkaProducer文档说它使用一个缓冲区和另一个I / O线程来执行发送,并且应该适当地关闭它们,以免资源泄漏。
据我了解,这意味着如果我每次调用producer.send()都会发送100条消息,它将尝试连接到代理,这是一项昂贵的I / O操作。
如果我错了,可以请您纠正我的理解,或者建议使用KafkaProducer更好些?
下面有一个类似的问题:
单个 Spring 的 KafkaConsumer 侦听器可以收听多个主题吗?
所以我现在明白我可以为 KafkaListener 注释的主题参数提供一个字符串数组,但是我想知道以下内容: