千家信息网

queue和topic消息发送接收模型是什么

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,ActiveMQ是一个非常流行的消息队列服务中间件,基于JMS(Java Message Service)规范,并且它是一个纯Java程序,运行环境只需要Java虚拟机。JMS规范定义了2类消息发送接
千家信息网最后更新 2026年11月01日queue和topic消息发送接收模型是什么

ActiveMQ是一个非常流行的消息队列服务中间件,基于JMS(Java Message Service)规范,并且它是一个纯Java程序,运行环境只需要Java虚拟机。

JMS规范定义了2类消息发送接收模型:点对点queue,发布订阅topic,区别是能够重复消费和是否保存。

1,点对点queue:不可重复消费,消息被消费前一直保存。

生产者发送消息到queue,一个消费者取出并消费消息。

消息被消费后,queue中不再保存,所有只有一个消费者能够取到消息。

queue支持多个消费者存在,但是一个消息只有一个消费者可以消费。

当前没有消费者时,消息一直保存,直到被消费者消费。

2,发布订阅topic:可重复消费,发布给所有订阅者。

生产者发布消息到topic中,多个订阅者收到并消费消息。

和queue不同,发布到topic中的消息会被所有订阅者消费。

当生产者发布消息时,不管是否有订阅者,都不保存消息。

JMS规范定义的2类消息传输模型queue和topic比较:


Queue

Topic

模型

点对点Point-to-Point

发布订阅publish/subscribe

有无状态

queue消息在消费前被一直保存在mq服务器上的文件或者配置DB

topic数据默认不保存,是无状态的。

完整性保障

queue保证每条消息都被消费者接收到

topic不保证生产者发布的每条消息都被订阅者接收到

消息是否会丢失

生产者发送消息到queue,消费者接收到消息。如果没有消费者,将一直保存,不会丢失。

生产者发布消息到topic时,当前的订阅者都能够接收到消息。如果当前没有订阅者,该消息就丢失。

消息发布接收策略

一对一的消息发布接收策略,一个生产者发送的消息只被一个消费者接收。mq服务器收到回复后,将这个消息删除。

一对多的消息发布接收策略,同一个topic的多个订阅者都能收到生产者发布的消息。


消息 消费 订阅 消费者 生产者 订阅者 生产 模型 多个 策略 服务 只有 服务器 状态 保证 不同 一对一 中间件 完整性 数据 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技 南京欣网互联网络科技 科技与互联网 鸠鸠互联网科技 美国互联网科技巨头监管 互联网最新的科技有限公司 互联网医疗科技 互联网科技英文 万易互联网科技有限公司 猫创互联网科技 互联网科技公司介绍 互联网媒体平台算高科技产业 天津腾达互联网科技有限公司 河南住房之家互联网科技 城市宝互联网科技有限公司 本届互联网大会上的黑科技 互联网领先科技成果宣传视频 上海互联网科技园景观 优雇互联网科技有限公司 武汉亿视互联网科技有限公司 广东万易互联网科技有限公司惠州分公司 贷财互联网科技 互联网女皇 腾讯科技 科技互联网公司logo 威龙国际互联网科技公司 用友工业互联网科技发展 21世纪互联网科技成就 上海旺乐尼互联网科技有限公司 互联网科技快速发展优美句子 广州全民伙伴互联网科技有限公司
0