我正在通过AMQPLib和RabbitMQ Bundle(用于Symfony)在PHP中使用RabbitMQ。
使用者在多台服务器上工作,这就是Rabbit的用途,这很好。但是,我遇到了一个特定情况,我想分批阅读消息,而我希望只让一个消费者同时工作。但是,为了获得高可用性,我希望其他使用者(来自其他服务器)充当备用。
我了解的是:
exclusive
标志-不幸的是Rabbit捆绑包没有公开它;此外,如果队列中有一个排他的使用者,则另一个会退出,但出现异常,我无法使用BatchConsumerInterface进行处理我想念什么吗?也许有一些内置的解决方案可以让我实现上述的目标?是否无需编写复杂的解决方案就绕过RabbitMQ捆绑包?