【发布时间】:2015-11-02 15:53:48
【问题描述】:
我在以下场景中使用 RabbitMQ。当用户使用高级搜索功能时,我通过 RabbitMQ 向几个服务器实例之一发送消息。它们运行相同的例程(数据库查询和计费)。我想确保我不会多次处理同一条消息。
我遇到过this great tutorial,但其中显示的交换类型是“主题”,这对我不起作用,因为我不止一次处理相同的消息。
如何在 RabbitMQ 中使用工作队列实现请求-响应模式,以便每条消息只处理一次并且有负载平衡?
【问题讨论】:
-
您无法使用 RabbitMQ(或其他任何分发的东西)获得“Exactly-Once Delivery”。这只是[不可能][1]。 [1]:en.wikipedia.org/wiki/Two_Generals%27_Problem
-
这里的实际问题是什么?您已经概述了一系列潜在问题,但没有提出任何问题。请编辑帖子以提出具体问题。