首页 > 其他分享 >RabbitMQ执行流程

RabbitMQ执行流程

时间:2024-10-14 20:48:04浏览次数:6  
标签:队列 流程 RabbitMQ 信道 交换机 消息 执行 路由

RabbitMQ由生产者(Publisher)、消费者(Consumer)、交换机(Exchange)、队列(Queue)和绑定(Binding)组件组成。

执行流程为:

1、创建连接(Connection)
	·生产者和消费者都需要创建到RabbitMQ服务器的TCP连接。
2、创建信道(Channel)
	·在RabbitMQ中,每个连接可以开设多个信道,信道是进行消息传输的通道。
3、声明交换机(Exchange Declaration)
	·生产者在发送信息之前需要声明一个交换机,指定交换机的类型(如direct、topic、fanout等)和持久性等属性。
4、声明队列(Queue Declaration)
	·消费者需要声明一个队列来接受消息,可以设置队列的持久性、排他性、自动删除等属性。
5、绑定(Binding)
	·将队列绑定到交换机上,同时可以指定路由键(Routing Key),这样交换机就知道如何根据消息的路由键将消息路由到正确的队列。
6、发送消息(Publishing Messages)
	·生产者发送消息到交换机,消息包含路由键和消息体。
7、消息路由(Message Routing)
	·交换机根据路由键和绑定规则将消息路由到一个或多个队列。
8、消息消费(Consuming Messages)
	·消费者监听队列,等待消息的到来。一旦消息到达,消费者就可以从队列中取出消息进行处理。
9、消息确认(Message Acknowledgment)
	·在处理完消息后,消费者需要发送一个确认回RabbitMQ服务器,表明消息已经被成功处理。如果消息处理失败,可以选择重新入队或者丢弃。
10、关闭信道和连接(Channel and Connection Closure)
	·消息处理完成后,可以关闭信道和连接,释放资源。

标签:队列,流程,RabbitMQ,信道,交换机,消息,执行,路由
From: https://www.cnblogs.com/handsomelt/p/18466042

相关文章

  • 消息队列之RabbitMQ
    1.初识MQ在分布式微服务中,不同服务接口之间的调用分为同步调用和异步调用。使用同步调用有几种问题拓展性差性能差级联失败因此在大部分场景,我们使用的都是异步调用。异步调用方式其实就是基于消息通知的方式,一般包含三个角色:消息发送者:投递消息的人,就是调用方消息Bro......
  • RabbitMQ
    RabbitMQ架构图publisher:生产者,也就是发送消息的一方consumer:消费者,也就是消费消息的一方queue:队列,存储消息。生产者投递的消息会暂存再消息队列中,等待消费者处理exchange:交换机,负责消息路由。生产者发送的消息由交换机决定投递到哪个队列virtualhost:虚拟主机,起到数据隔离......
  • RabbitMQ
    一、RabbitMQ的架构图二、写出RabbitMQ的五种模式简单模型WorkQueues模型Fanout交换机Direct交换机Topic交换机......
  • RabbitMQ的五种消息模式
    一、简单模式(Simple)最基础的模式,适用于简单的场景,生产者直接向队列发送消息,消费者从监听的队列中获取消息,没有交换机二、工作队列模式(WorkQueues)实现负载均衡,平摊压力,多个消费者监听同一个队列,队列将消息均匀分配给消费者,同样没有交换机三、发布/订阅模式(Publish/Subscribe)......
  • RabbitMQ的五种模式
    一、五种模式详解1.简单模式(Queue模式)当生产端发送消息到交换机,交换机根据消息属性发送到队列,消费者监听绑定队列实现消息的接收和消费逻辑编写.简单模式下,强调的一个队列queue只被一个消费者监听消费.1.1结构生产者:生成消息,发送到交换机交换机:根据消息属性,将消息......
  • 如何在 Jupyter Notebook 执行和学习 SQL 语句(上)—— 基本原理详解和相关库安装篇
            近期我找工作很多岗位问到sql,由于我简历上有写,加上我实习的时候确实运用了,所以我还是准备复习一下SQL语句,常见的内容,主要包括一些内容,比如SQL基础(主要是取数select,毕竟用的时候基本上不会让我一个实习生进行一个删除之类的操作)和一些进阶的用法比如窗口函数之......
  • 利用香港多IP服务器建站蜘蛛池执行SEO策略的实践
    在当今数字化时代,搜索引擎优化(SEO)已经成为吸引网站流量、提升在线业务可见性的关键策略。香港多IP服务器因其地理位置优势和网络环境的优越性,成为执行SEO战略的理想选择。以下是利用香港多IP服务器执行SEO策略的实践:地理位置和本地化策略:利用香港多IP服务器时,要考虑地理位......
  • 五、Spring Boot集成Spring Security之认证流程2
    二、概要说明上文已详细介绍了四、SpringBoot集成SpringSecurity之认证流程本文则着重介绍用户名密码认证过滤器UsernamePasswordAuthenticationFilter的实现原理过程认证管理器(authenticationManager)认证提供者(AuthenticationProvider)自定义配置用户名密码实现(UserDetail......
  • rabbitmq 新下载链接
    Linux下安装RabbitMQ需要依赖socat和erlang插件环境1插件下载 1.1RabbitMQ下载下载地址一:https://www.rabbitmq.com/download.html下载地址二:https://packagecloud.io/rabbitmq/rabbitmq-server1.2Erlang下载Erlang的版本需要与RabbitMQ的版本匹配版本对应地址如下:http......
  • django异步情况下执行orm操作
    importasynciofromchannels.dbimportdatabase_sync_to_asyncfrom.modelsimportConversationclassLlmConsumer(AsyncWebsocketConsumer):def__init__(self,*args,**kwargs):super().__init__(args,kwargs)self.chat_id=None......