Spring Cloud Stream with Kafka binder 以及如何对来自源的数据进行排队

Spring Cloud Stream with Kafka binder and how to queue data from source

我是 spring 卡夫卡云流的新手,想知道它的概念。在我的应用程序中,当源以流方式向 kafka binder 发送消息时,数据不会堆积......我可以看到数据源在 Kafka 消费者中工作,实际上并没有消费,只是为了检查数据是否真的出来了。

但是,问题是我无法使用接收器上堆积的数据。(处理器的侦听器)。它可以近乎实时地仅使用从源流式传输的数据。

让我举个例子。 对于制作人,

data1, data2, data3, data4, data5, ... (streaming for producer)

对于consumer,在data4生产的时候启动。然后,我的应用程序将从数据 4...

中获取数据
data4, data5, data6, .... (streaming for consumer)

据我了解 Kafka 的概念,data1、data2、data3 应该等待消费者,但它不适合我。我知道有什么问题以及解决这个问题的想法吗?

您需要显示您的配置。

匿名消费者(没有 spring.cloud.stream.bindings.xxx.group 的消费者)从主题末尾开始消费(在他们开始时),因此可能 "miss" 一些消息。

group 的消费者(从未消费过)从头开始; group(之前消费过)的消费者从他们停止的地方开始。