当前位置: 首页 > news >正文

消息队列常见的两种消费模式

一、点对点模式

点对点模式:生产者发送消息到消息队列,消费者从消息队列中接收、处理消息,消息被消费后,就不在消息队列中了。每个消息只能由一个消费者接收和处理。如果有多个消费者监听同一个队列,消息将被发送到其中一个消费者,而其他消费者无法接收到该消息。

特点:

         1. 每个消息只有一个接收者,消息一旦被消费,消息就会被从消息队列中移除。
         2. 发送者和接收者间没有依赖性,发送者发送消息之后,不管有没有接收者在运行,都不会影响到发送者下次发送消息。
         3. 具有消息确认机制,消费者可以确认消息的接收和处理状态,接收者在成功接收消息之后需向队列应答成功,以便消息队列删除当前接收的消息,如果消费者处理失败,消息可以被重新发送。

适用于:

一对一通信,例如任务分发、异步处理等。

二、发布订阅模式

在发布订阅模式中,生产者将消息发送到一个主题(Topic)。订阅该topic的消费者才可以接收到消息。一个主题可以有多个订阅者,每个订阅者都会接收到发布到该主题的消息。

特点:

        1. 每个消息可以有多个订阅者,所有订阅者都将接收到相同的消息副本。

        2. 布者和订阅者之间是解耦的,彼此不直接交互(发布者只关注自己发到哪个topic,订阅者从哪个topic获取消息)。订阅者可以动态地订阅或取消订阅主题,而不需要对发布者进行修改。

        3. 为了消费消息,订阅者需要提前订阅该角色主题,并保持在线运行;

适用于:

一对多通信,例如事件通知、广播等。

http://www.lryc.cn/news/321848.html

相关文章:

  • php的伪协议详解
  • 【研发日记】Matlab/Simulink技能解锁(四)——在Simulink Debugger窗口调试
  • 沪深主板打板胜率统计
  • Python中的列表推导式(List Comprehension)
  • MusicHiFi: Fast High-Fidelity Stereo Vocoding
  • 完美解决 RabbitMQ可视化界面Overview不显示折线图和队列不显示Messages
  • matlab 混沌系统李雅普洛夫指数谱相图分岔图和庞加莱界面
  • Linux-docker安装数据库mysql
  • 网工内推 | 七险一金,上市公司招信息安全工程师,大牛带队
  • 04.组件的组成和组件间通信
  • 【Sql Server】通过Sql语句批量处理数据,使用变量且遍历数据进行逻辑处理
  • MySQL中group_concat()用法
  • 栈队列数组试题(四)——数组和特殊矩阵
  • 数据结构的概念大合集01(含数据结构的基本定义,算法及其描述)
  • .NET高级面试指南专题十七【 策略模式模式介绍,允许在运行时选择算法的行为】
  • 突飞猛进,智能饮品机器人如何助力实体经济?
  • AI:150-基于深度学习的医学数据挖掘与病症关联发现
  • c语言:最大公约数
  • 12 对称加密AES和非对称加密RSA
  • Vue2(二):计算属性、监视属性、二者的区别
  • CTF题型 SSTI(2) Flask-SSTI典型题巩固
  • 计算机设计大赛 题目: 基于深度学习的疲劳驾驶检测 深度学习
  • 小字辈[天梯赛]
  • Linux常用操作命令、端口、防火墙、磁盘与内存
  • <JavaEE> 了解网络层协议 -- IP协议
  • 【安全类书籍-2】Web渗透测试:使用Kali Linux
  • ubuntu10.04 apache2.2开启tls1.2的支持,使现代的edge和firefox浏览器能正常访问https
  • 算法学习(持续更新中)
  • 蓝桥杯 2023 省B 飞机降落
  • 基于python的变配电室运行状态评估与预警系统flask-django-nodejs-php