RabbitMQ消息传递流程

本文介绍了RabbitMQ中连接(Connection)和信道(Channel)的概念,强调它们在网络通信中的作用。详细阐述了消息从生产者投递到消费者消费的完整流程,包括交换器、队列、路由键的使用,以及涉及的持久化、自动删除、排他和自动确认等属性。同时,文章提供了相关名词的解释,帮助读者深入理解RabbitMQ的工作原理。
摘要由CSDN通过智能技术生成
两个新名词

本篇文章以上篇文章《Rabbit的基础概念》为基础,且在上篇文章的前提下又引入了两个新的概念:

连接( Connection)

我们知道绝大部分的通信都是基于网络协议的,其中TCP协议就是广为人知的一种协议,在RabbitMQ中,生产者和消费者与RabbitMQ的通信就是基于TCP连接的。不过呢我们知道TCP连接的创建和销毁在高并发场景下对于操作系统来说都是特别昂贵的开销,所以RabbitMQ又引入了信道的概念

信道(Channel)

信道是一个类似于NIO(一种TCP多路复用技术)的技术
在RabbitMQ中每个生产者、消费者线程各把持一个信道,多个信道复用了同一个TCP 连接。当每个信道的流量不是很大时,复用单连接可以在产生性能瓶颈的情况下有效地节 TCP 连接资源。当信道本身的流量很大时,就会开辟多连接,将这些信道均摊到这些连接中

消息流转过程

还是先看一下上篇文章的那副图
1

生产者消息投递过程
  1. 生产者连接到Broker 建立一个连接,然后开启一个信道
  2. 接着生产者声明一个交换器 ,并设置相关属性,比如交换机类型、是否持久化、是否自动删除、是否内置等
  3. 生产者声
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值