如何确保多通道环境下同一个主题的rabbitmq消息发布在同一个通道上

问题描述 投票:0回答:1

我正在使用 spring amqp 多线程环境,并且在这些线程之间共享的一个 mq 连接上有多个通道。这些频道上发布了各种主题的消息。需要维护具有相同主题的消息的顺序,为了实现这一点,我需要每次将它们发布到相同的频道。我怎样才能实现这个目标? spring是否提供了一些规定来在可用频道列表中选择固定频道?

rabbitmq spring-amqp spring-rabbit
1个回答
0
投票

您可能需要为您的

CachingConnectionFactory
寻找专用的
RabbitTemplate
,其尺寸为
1
用于通道池。

另一个候选者是

ThreadChannelConnectionFactory
,但您需要确保所有生产者将消息发送到同一线程,其中这样的
RabbitTemplate
实例将重用附加到该线程的上述通道。

在文档中查看更多信息:https://docs.spring.io/spring-amqp/reference/amqp/connections.html

© www.soinside.com 2019 - 2024. All rights reserved.