1.先生产 只启动1号消费者。问题1:1一号消费者能消费消息吗?
先生产3条消息

如图值启动一个消费者是可以消费成功的
2. 先生产 先启动1号消费者 再启动2号消费者 问题:2号消费者还能消费消息吗?

先启动1号消费者 在启动2号消费者


红色和蓝色的提醒可以不关心,只看白色的文字,可以看出1号消费者先启动 ,消费了3条消息,2号后启动,没有能够消费到消息,前台页面也可以看出有2个消费者的信息

3 先启动2个消费者 在生产6条信息,请问:消费情况如何?

此时 ,前端显示只有两个消费者,0条消息


后台显示2个消费者正在监听。还没有生产消息,所以无法消费,此时生产了6条消息

生产完消息后 1号消费者消费的信息

生产完消息后 2 号消费者消费的信息

有图不多说了,平均分配了
总结
(1)每个消息只能有一个消费者,类似1对1的关系,好比个人快递自己领取自己的
(2)消息的生产者和消费者之间没有时间上的相关性,无论消费者在生产者发送消息的时候是否处于运行状态,消费者都可以提取消息。好比我们的发送短信,发送者发送后不见得接受者立即接受查看
(3)消息被消费后队列中不会再存储,所有消费者不会消费到已经消费掉的消息
本文通过三个场景探讨了ActiveMQ消费者的消费情况。首先,当只有一个消费者时,该消费者能成功消费消息。其次,即使有第二个消费者启动,已启动的消费者会继续消费消息,新的消费者无法获取未消费的消息。最后,当两个消费者同时启动并生产6条消息时,消息被平均分配给两个消费者。总结指出,每个消息仅被一个消费者消费,消费者与生产者之间无时间关联,且已消费消息不会再次被消费。

被折叠的 条评论
为什么被折叠?



