当消费者在 Rabbit mq 中生成时丢失从发布者发送的消息

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

我只是在探索rabbit mq主题https://www.rabbitmq.com/tutorials/tutorial- Five-javascript.html
当我连续运行

./receive_logs_topic.js "#"
(消费者)并发布消息时,它工作正常。

但是,当我杀死消费者并通过发布者发送消息 2-3 次并再次启动消费者时,它不会处理我之前发送的消息。

我正在与兔子队列进行比较,只要消费者回来,它就会处理待处理的消息。

topics
仅以这种方式工作还是我搞乱了某些配置?

rabbitmq
1个回答
1
投票

当您停止消费者时,它声明的队列和绑定将被删除,因为它们是独占队列。由于 RabbitMQ 没有地方可以路由消息,因此它们将被丢弃。

要解决此问题,您必须更改代码以使用发布者和消费者都声明的众所周知的队列(当然需要绑定)。这样启动哪个进程并不重要。

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