所以我正在阅读tutorial来配置RabbitMQ和SpringBoot。
有人说:
大多数时候,我们只需要处理一次消息。 Spring Cloud Stream通过消费者群体实现了这一行为。
因此,我开始在Spring docs上寻找更多信息,其内容是:
这样做时,会将应用程序的不同实例放置在 竞争性消费者关系,其中只有一种情况是 应该处理给定的消息。
Spring Cloud Stream通过以下概念为这种行为建模 消费群体。 (Spring Cloud Stream消费者组类似于 并受到Kafka消费者群体的启发。)
因此,我使用Spring Boot Cloud Stream和RabbitMQ并使用spring.cloud.stream.bindings.<channel>.group
设置了here两个节点。
在我看来,这似乎至少是一次。我认为那是错误的吗?即使使用spring.cloud.stream.bindings.<channel>.group
,我是否仍然可以处理两次消息?
谢谢
答案 0 :(得分:1)
至少一次。发送确认之前,连接可能已关闭。稀有,但可能。