【问题标题】:RabbitMQ Channel reuse (SimpleMessageContainer)RabbitMQ 通道复用(SimpleMessageContainer)
【发布时间】:2018-07-18 04:27:58
【问题描述】:

我的 Spring Boot 应用程序的功能是监听 rabbitmq 队列上的消息,在 onMessage 中进行一些处理,然后将消息发布到另一个 rabbitmq 队列上。我们正在使用 spring-rabbit (1.7.2.RELEASE)。我们已经使用 SimpleMessageListenerContainer 配置了监听器。

我的问题是我可以使用我正在阅读他的消息的同一个频道发布。 spring-rabbit 是否提供对侦听器使用的通道的访问?以便可以重复使用相同的频道进行发布?

谢谢, 思密达

【问题讨论】:

    标签: spring-rabbit


    【解决方案1】:

    如果您使用事务(侦听器容器),则事务性RabbitTemplate 在容器线程上执行的任何操作都将参与事务并使用相同的通道。

    如果您不使用事务,则可以使用ChannelAwareMessageListener 访问接收消息的通道。见Message Listeners

    如果您使用@RabbitListener,您可以添加Channel 作为方法参数。

    当前的 1.7.x 版本是 1.7.9。

    【讨论】:

    • 是的。我正在使用 ChannelAwareMessageListener。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-03
    • 2015-08-22
    • 2015-11-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多