ActiveMQ笔记32-点对点和发布订阅小总结

点对点模型是基于队列的,生产者发送消息到队列,消费者从队列取消息,队里的存在使得消息的异步传输称为可能。类似于发短信。

如果session关闭时,有部分消息被收到但是还没有被签收(acknowledge),当消费者下次再连接到相同队列的时候,消息会被再次接收。

队列可以长久的保存消息直到消费者接收到消息,消费者不需要因为担心消息会丢失而时刻保持会话持久连接,充分体现了异步传输模式的优势。

JMS的pub/sub模式定义了如何向有关内容结点发布和订阅消息,这些结点叫做topic。

主题可以被认为是消息的传输中介,发布者发布消息主题,订阅者从主题鼎业消息。

主题使得消息订阅者和消息发布者互相独立,不需要接触即可保证消息的传送,也就是订阅者不需要关心发布者,发布者也不需要关心订阅者。

非持久订阅只有当客户端处于激活状态,也就是和MQ保持连接状态才能收到发送到某个主题的消息。

如果消费者处于离线状态,生产者发送的主题消息将会丢失,消费者永远也收不到。

先订阅注册才能接受发布,只给订阅者发布消息。也就是前面说的,先启动消费者,后启动生产者。

持久化订阅,客户端需要先向MQ注册一个ID识别号。当这个客户端处于离线时,生产者会为这个ID保存所有发送到主题的消息,当客户端再次连接到MQ时,会根据消费者的ID得到所有当自己处于离线时错过的消息。

非持久化订阅状态下,不能恢复或重新发送一个未签收的消息。只有持久化的时候,才会恢复或重新发送未签收消息。

通常情况下,都不希望丢消息吧,所以实际应用中,持久化订阅用的更多一些。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值