Rabbitmq:如何在多个使用者中维护Rabbitmq的fifo特性?
我们有多个消费者来处理创建/更新/删除库存的请求 所有这些请求都在rabbitmq中处理。问题是,有时创建股票并立即删除时,会先处理“删除”消息,然后再处理“创建”消息 尽管我们在“删除”之前推送“创建”消息。这是因为我们有多个使用者在不同的服务器上运行Rabbitmq:如何在多个使用者中维护Rabbitmq的fifo特性?,rabbitmq,rabbitmq-exchange,Rabbitmq,Rabbitmq Exchange,我们有多个消费者来处理创建/更新/删除库存的请求 所有这些请求都在rabbitmq中处理。问题是,有时创建股票并立即删除时,会先处理“删除”消息,然后再处理“创建”消息 尽管我们在“删除”之前推送“创建”消息。这是因为我们有多个使用者在不同的服务器上运行 我的问题是,在多个消费者中运行它本身违反了队列的FIFO原则。如何避免这种情况?假设在提出建议之前,您的股票可能发生的事件顺序如下: 创造 更新(可选,可以是多个) 删除 在你所描述的极端情况下,这不会有帮助 我相信您的最佳选择是,无论是使用链
我的问题是,在多个消费者中运行它本身违反了队列的FIFO原则。如何避免这种情况?假设在提出建议之前,您的股票可能发生的事件顺序如下:
- 删除延迟200ms的邮件
- 以100毫秒的延迟更新消息
- 毫不延迟地创建消息