我想为几个组成部分设计舍入策略:
// | exchange | type | routing key | queue |
// |--------------|-------|----------------------------|------------------------------|
// | processing | topic | processing.trx.elavon | processing-elavon-sale |
// | processing | topic | processing.trx.elavon | processing-elavon-authorize |
// | processing | topic | processing.trx.elavon | processing-elavon-capture |
// | processing | topic | processing.trx.genesis | processing-genesis-sale |
我尝试了主题交换和直接交换,但是出现错误Reply received after timeout
。经过调查,结果发现我正在将消息发送到1个队列,但是2个队列正在撤消消息。
我的情况我想使用路由密钥并作为目标网关的配置变量或其他级别,然后将消息类型发送到队列。
但是看起来这种设计不合适。
哪种路由策略应该更适合以避免错误:Reply received after timeout
?只有一个队列可以接收该消息并进行回复。
编辑:
在我的情况下,我使用Spring AMQP发送消息:
convertSendAndReceive(
ContextServer.EXCHANGE_PROCESSING, ContextServer.ROUTING_KEY_PROCESSING_TRANSACTION_ELAVON, "some_payload");
但是如何仅到达一个队列processing-elavon-sale
,而不是所有队列都绑定到路由键processing.trx.elavon
?