Spring cloud 使用SpringCloudStreamRabbitMQ绑定器实现延迟重试消息模式

Spring cloud 使用SpringCloudStreamRabbitMQ绑定器实现延迟重试消息模式,spring-cloud,spring-cloud-stream,spring-rabbit,Spring Cloud,Spring Cloud Stream,Spring Rabbit,如何实现本文中提到的延迟重试消息模式。我不希望丢失死信队列中的消息,还希望使用回退重试。一旦重试次数用完,我希望消息在DLQ中排队 存在类似的堆栈溢出问题,但根据解决方案,它将在dlq ttl到期后继续重试。此外,我不想在重试尝试用尽后丢失来自DLQ的消息 我相信您正在寻找由提供的功能。是这样吗?谢谢@Oleg让我指向spring重试选项。它看起来很有用,但我必须使用AmqpRejectAndDontRequeueException和x-death头来尝试这一点,并启用重试max-trument

如何实现本文中提到的延迟重试消息模式。我不希望丢失死信队列中的消息,还希望使用回退重试。一旦重试次数用完,我希望消息在DLQ中排队


存在类似的堆栈溢出问题,但根据解决方案,它将在
dlq ttl
到期后继续重试。此外,我不想在重试尝试用尽后丢失来自DLQ的消息

我相信您正在寻找由提供的功能。是这样吗?

谢谢@Oleg让我指向
spring重试
选项。它看起来很有用,但我必须使用
AmqpRejectAndDontRequeueException
x-death
头来尝试这一点,并启用重试
max-truments>1
。通过这种组合,我假设我不会丢失来自DLQ的消息,也能够通过回退功能实现重试。此外,如果不想使用Spring retry,您可以查看延迟的交换: