确认Spring Cloud Stream中的消息

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了确认Spring Cloud Stream中的消息相关的知识,希望对你有一定的参考价值。

我决定选择SCS以避免陷入特定的消息代理。话虽如此,我还没有找到一种方法来自动或手动确认消息,而我发现的所有内容都是Spring Cloud GCP下的内容,如PubSubTemplate。问题是我的听众一遍又一遍地收到相同的消息。有没有一种方法可以在SCS中提取消息时自动确认消息,而不管消息传递实现如何?也许通过改变一些财产?

答案

确认是自动的,只要消息处理程序没有抛出异常。当然,特定的活页夹可能存在问题,但除此之外,我确信GCP活页夹没有这个问题。

基本上我想说的就是你说的“......与SCS一起避免陷入困境......”。我会添加“......以避免陷入手动处理消息传递问题......”。这意味着ACK / NACK,重试,DLQ等一般都是SCSt和Spring的责任。

是的,有些边缘情况可能需要手动处理,某些绑定器确实暴露了确认和其他回调,但我们还没有,因为我更关注你所描述的症状 - 我的听众不断收到相同的消息并结束。如果这样的倾听者没有抛出异常,这几乎是不可能的。

因此,请考虑提供更多详细信息或更好地发布您的示例项目,以便在GitHub上的某处重现问题,以便我们查看。

以上是关于确认Spring Cloud Stream中的消息的主要内容,如果未能解决你的问题,请参考以下文章

spring-cloud-stream 请求-回复消息模式

Spring cloud stream消息分组

十五Spring Cloud Stream 消息驱动

Spring Cloud 2020.0.0 中的 Spring Cloud Bus/Stream 问题

Spring Cloud Stream同一通道根据消息内容分发不同的消费逻辑

Spring Cloud Stream同一通道根据消息内容分发不同的消费逻辑