我是一个新手Spring云流与Kafka,并想知道一些关于它的概念。在我的应用程序中,当源程序以流式方式向kafka binder发送消息时,数据不会堆积起来。。。我可以看到数据源在kafka consumer中工作,它不是实际的消费,只是为了检查数据是否真的出来了。
然而,问题是我不能使用堆在接收器(处理器的侦听器)上的数据。它只能以近乎实时的方式消耗源中的数据流。
我举个例子。对于制片人,
data1, data2, data3, data4, data5, ... (streaming for producer)
对于使用者,它将在data4生成时启动。然后,我的应用程序将从数据4获取数据。。。
data4, data5, data6, .... (streaming for consumer)
据我所知,kafka的概念,data1,data2,data3应该在等待消费者,但对我来说不是。我知道什么地方出了问题,有什么想法来解决这个问题?
1条答案
按热度按时间ars1skjm1#
你需要显示你的配置。
匿名消费者(那些没有
spring.cloud.stream.bindings..group
)从主题的末尾开始消费(在它们开始的时候),因此可能会“错过”一些消息。具有
group
(从未消费过的)从头开始;具有group
(以前消费过的)从停止的地方开始。