微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

RabbitMQ pop操作原子性

如何解决RabbitMQ pop操作原子性

| 有人知道RabbitMQ队列上的pop操作是否是原子的吗? 我有多个进程从同一个队列中读取(该队列被标记为持久性,在版本2.0.0上运行),并且看到一些相当奇怪的行为。

解决方法

如果您的多个进程正在使用同一队列中的消息,则它们永远不应使用同一消息。 但是,请注意以下几点: 如果代理已将消息传递给您的一个消费者,并且拒绝了该消息(或在有机会确认之前终止了消息),则代理会将其放回到同一队列中,并将其传递给您的一个保持活跃的消费者。 如果您的消费者从不同的队列中拉出(每个队列都具有匹配的绑定),那么代理将把消息的副本放在每个队列中,每个消费者都将获得同一消息的副本。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。