mingyang66/spring-parent

rabbitmq用延迟插件导致消息 exchange到queue失败,10s之后依然可以收到消息

dearMOMO opened this issue · 1 comments

您的博客地址 https://blog.csdn.net/yaomingyang/article/details/103819119

spring_returned_message_correlation:00c5a026-189c-4141-8484-fccc5a1f1de9return exchange: delay_plug.test.exchange, routingKey: delay_plug.test.routing.key, replyCode: 312, replyText: NO_ROUTE,message:(Body:'[B@67037613(byte[18])' MessageProperties [headers={spring_returned_message_correlation=00c5a026-189c-4141-8484-fccc5a1f1de9}, messageId=00c5a026-189c-4141-8484-fccc5a1f1de9, contentType=application/octet-stream, contentLength=0, receivedDeliveryMode=PERSISTENT, priority=9, receivedDelay=10000, deliveryTag=0])
谢谢

你要理解延迟插件发送消息后是首先存储在发送端点所在的Mnesia数据库,你在消息队里中是看不到消息的,只有延迟的消息到了(如:延迟10s,10s后消息才会发送到消息队列上)你才能在消息队列上看到消息,这是延迟插件处理消息的逻辑,而不是exchange发送到queue失败。