RabbitMQ

  1. 信道(channel):信道是消息的生产者、消费者和服务器之间进行通信的虚拟连接。为什么叫"虚拟连接"?因为TCP连接的建立是非常消耗资源的,所以RabbitMQ在TCP连接的基础上构建了虚拟信道。我们尽量重复使用TCP连接,而信道是可以用完就关闭的
  2. 队列(queue):队列是用来进行消息收发的地方,生产者把消息放到队列中,消费者从队列中获取消息。
  3. 交换机(exchange):交换机用于把消息路由到一个或者多个队列中。

routing模式:

在这种模式中,生产者把消息发布到交换机中,消息会携带routingKey属性,交换机会根据routingKey的值把消息发送到一个或者多个队列;消费者会从队列中获取消息;交换机和队列都位于RabbitMQ服务器内部。这种模式的优点在于,即使消费者不在线,消费者相关的消息也会保存到队列中,当消费者上线后,就可以获取离线期间错过的消息。我们知道,在软件系统中,消息的生产者和消费者都不可能24小时在线,这种模式可以保证消费者收到因为服务器重启等原因而错过的消息。

相关推荐
歪歪1003 小时前
详细介绍一下“集中同步+分布式入库”方案的具体实现步骤
开发语言·前端·分布式·后端·信息可视化
JavaArchJourney4 小时前
数据库分库分表
数据库·分布式
熙客5 小时前
Kafka:专注高吞吐与实时流处理的分布式消息队列
分布式·中间件·kafka
西岭千秋雪_7 小时前
Zookeeper数据结构
java·数据结构·分布式·zookeeper
happy_king_zi7 小时前
RabbitMQ直接查看队列中消息的内容
分布式·rabbitmq
车江毅8 小时前
亿级O2O(智能设备)系统架构笔记【原创】
java·分布式·技术战略规划
浅浅的小草9 小时前
LabVIEW在银河麒麟V10系统下的运行使用
labview
回家路上绕了弯9 小时前
QPS 百万级分布式数据库:高并发订单号生成方案设计与落地
分布式·后端
熊文豪10 小时前
在 openEuler 上部署 Kafka 集群:深度性能评测与优化指南
分布式·kafka·openeuler