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