![](/img/trans.png)
[英]When I use spring-cloud-stream to send rabbitmq messages, I cannot specify the RoutingKey sent
[英]Will spring-cloud-stream Kafka consumer not consume messages that were sent when the service was down?
我有一个春季云流Kafka客户服务,其中的确认是手动完成的。 提供了一个固定的消费群体。
spring.cloud.stream.bindings.input.group = sampleconsumergroup
resetoffsets和startOffset属性设置如下spring.cloud.stream.kafka.bindings.input.consumer.resetOffsets = true spring.cloud.stream.kafka.bindings.input.consumer.startOffset = latest
消费者服务侦听主题模式。
场景:消费者服务关闭,在此期间,一些消息发送到它的主题。 当消费者服务恢复时,这些消息不会被使用。 只有在其重新联机后发送的消息才会被使用。
这是预期的吗? 我目前处于Kafka学习阶段,对您的解释将不胜感激。
通常,当消费者加入消费者组时,它将从上次提交的偏移中获取。
startOffSet属性具有最早和最新两个选项。这些选项在使用者启动时使用,但分配的分区没有提交的偏移量。
在您的方案中,您从分配的分区读取后不会提交偏移量,因此,当客户服务返回时,它仅读取最新消息。
您明确地告诉活页夹这样做
spring.cloud.stream.kafka.bindings.input.consumer.resetOffsets=true
spring.cloud.stream.kafka.bindings.input.consumer.startOffset=latest
只需删除这些属性即可; 与组的绑定通常会提供您想要的行为。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.