RabbitMQ基础入门
在最初状态下,生产者发送消息的时候
-
生产者连接到RabbitMQ Broker , 建立一个连接( Connection) ,开启一个信道(Channel)
-
生产者声明一个交换器,并设置相关属性,比如交换机类型、是否持久化等
-
生产者声明一个队列井设置相关属性,比如是否排他、是否持久化、是否自动删除等
-
生产者通过路由键将交换器和队列绑定起来
-
生产者发送消息至RabbitMQ Broker,其中包含路由键、交换器等信息
-
相应的交换器根据接收到的路由键查找相匹配的队列。
-
如果找到,则将从生产者发送过来的消息存入相应的队列中。
-
如果没有找到,则根据生产者配置的属性选择丢弃还是回退给生产者
-
关闭信道。
-
关闭连接。
消费者接收消息的过程:
- 消费者连接到RabbitMQ Broker ,建立一个连接(Connection ) ,开启一个信道(Channel) 。
- 消费者向RabbitMQ Broker 请求消费相应队列中的消息,可能会设置相应的回调函数,以及做一些准备工作
- 等待RabbitMQ Broker 回应并投递相应队列中的消息, 消费者接收消息。
- 消费者确认( ack) 接收到的消息。
- RabbitMQ 从队列中删除相应己经被确认的消息。
- 关闭信道。
- 关闭连接。