卡夫卡输出流

Kafka output stream

我已经与 kafka 消费者和生产者 api 合作了一段时间,想尝试一下流 api。我在网上看了很多参考资料,但我想不出这件简单的事情。

如何制作只向输出主题发送消息的 KStream。

以他们在 github 存储库中的这个最基本的例子为例: https://github.com/confluentinc/examples/blob/3.2.x/kafka-streams/src/main/java/io/confluent/examples/streams/WordCountLambdaExample.java 它从一个队列中获取消息,并在处理后将它们发布到另一个队列中。

像这样:

final KStreamBuilder builder = new KStreamBuilder();
final KStream<String, String> textLines = builder.stream();
// do the dirty work...
textLines.to("outputTopic") 

但是 builder.stream(); 不存在它至少需要输入主题名称。

我应该坚持使用普通的 kafka 生产者吗?如果是这样,我就没有运气找到明确说明这一点的资源。

Kafka Streams API 旨在将主题作为输入流使用、处理记录并将结果写回主题。它的设计目的不仅仅是将数据写入 Kafka。

所以是的,如果您想将数据写入主题,您应该使用 KafkaProducer