我已经使用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 Streams API 旨在将主题用作输入流,处理记录,并将结果写回主题。它的设计不仅仅是将数据写入 Kafka。
所以是的,如果你想将数据写入主题,你应该使用KafkaProducer
。