RabbitMQ 队列的可轮询 StreamListener 或 MessageSource

Pollable StreamListener or MessageSource for RabbitMQ Queue

我有 Spring Cloud Stream Rabbit 项目,该项目将消息发送到 rabbit exchange errorEx 以防流程出错。 我想定期(每 5 分钟一次)从队列中收听并处理它。

有什么方法可以让我拥有一个 Pollable @StreamListener? 或者我可以配置一个 rabbitMQ org.springframework.integration.core.MessageSource 这样我就可以用轮询器构建一个 IntegrationFlow 吗?

Spring 集成 AMQP 不提供可轮询适配器。 @StreamListener 仅支持 Subscribable 个频道。

您可以使用自定义 MessageSource,它使用 RabbitTemplate receive() 操作来获取消息。

或者,您可以使用消息驱动适配器并stop()/start()根据需要使用它。