RabbitMQ中有大批量的消息,此时多个消费者同时访问消息队列是怎样取里面的消息的?
Posted 杀手不太冷!
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RabbitMQ中有大批量的消息,此时多个消费者同时访问消息队列是怎样取里面的消息的?相关的知识,希望对你有一定的参考价值。
RabbitMQ中有大批量的消息,此时多个消费者同时访问消息队列是怎样取里面的消息的?
首先写一个消费者
如下图:
模拟出多个消费者线程
因为我们要一次性的模拟多个消费者线程,所以我们要把Worker01消费者打开一个配置,打开一个允许多个线程同时运行的配置,如下图:
启动多个消费者线程如下图:
现在已经模拟出来了三个消费者线程了,接下来就要看一下不同线程的消费者是如何同时去访问RabbitMQ消息队列中的消息的。
模拟生产者向RabbitMQ消息队列里生产大量的消息
测试
三个不同线程的消费者启动之后,再启动生产者,大批量的往消息队列里发送消息,如下图:
结果:因为不同线程的消费者是轮询的从RabbitMQ消息队列中取消息,所以C1因为可以取到AA,DD消息,而C2应该取到BB消息,C3应该取到CC消息,如下图:
测试成功。
以上是关于RabbitMQ中有大批量的消息,此时多个消费者同时访问消息队列是怎样取里面的消息的?的主要内容,如果未能解决你的问题,请参考以下文章