(一)关于ActiveMQ的入门使用和实战

关于ActiveMQ的入门基础概念的理解

(1)首先是ActiveMQ的核心两种消息发送模式的概念:

  1. 第一种就是点对点的消息发送模式,就是只能有一个消费者来进行消费者一个生产者中的消息(Queue)
  2. 第二种就是基于生产者消费者模式的消息发布和订阅的模式,这个是可以有多个消费者来共同消费同一个的Topic(Topic其实就是一个topic多个消费者共同消费)

(2)然后是对比一下这两种模式的对比和使用场景:

  1. 数据的状态上: 如果是在Queue模式中,Queue的数据状态其实是需要实际保存到数据库中的,但是Topic模式下的话,可能就是无状态的,其实也就是说topic会丢失的
  2. 数据的完整性保证 如果是在Queue模式中的话,Queue能保证生产者产生的每一条数据都会被消费者进行消费的。但是在Topic模式中的话,其实发布消息的生产者并不能保证每条消息都被订阅的消费者所消费。
  3. 消息是否会丢失 Queue模式中其实是好比是生产者把消息发送到一个暂存区的队列中先存放着,不管此时你有没有消费者来消费,这个消息都不会丢失,消费者什么时候来消费这个Queue中的消息都可以,而在消息订阅的Topic模式中,只能是发布消息的生产者把消息发送到一个指定的Topic中时,只有正在监听这个Topic的消息订阅者才能够获取到这个消息,如果此时的订阅者没有正在监听这个Topic的 话,那么这个订阅者就不能消费到这个Topic的消息(因为Topic模式下的数据不会持久化的,这个我们可以自己去实现)
  4. 消息发布接受策略 在Queue模式中,其实就是当一个生产者生产一条消息之后,只能有一个消费者进行消费,当这个消费者消费完之后,会通知服务器消费者已经消费完成,然后服务器会对Queue里面的消息进行删除或者其他操作。但是在Topic模式中,监听同一个Topic地址的多个订阅者都能收到这个Topic的消息,然后订阅消费完成之后,在通知服务器。

(3)由于发布订阅模式的消息不是持久化的,那么我们需要去进行持久化消息的集中方式:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章