RabbitMQ 消息流程、AMOP 概念

AMOP

Server:Broker、RabbitMQ Server,实现 AMOP 实体服务,接受客户端的连接

Conneciton:链接,应用程序与 Server 的网络连接

Channel:网络信道,进行消息读写的通道,客户端可以建立多个 Channel,每个 Channel 就是一个会话

Message:消息,服务器和应用程序之间传输的数据,由 Properties 和 Body 组成。Properties 用于修饰消息,比如消息优先级、延迟等,Body 是消息体

Virtual host:虚拟地址,用于逻辑隔离,是最上层的路由。一个虚拟地址中可以有多个 Exchange 和 Queue,但不允许同名

Exchange:交换机,用于接收生产者的消息,根据 Routing key 转发到 Queue

Queue:Message queue,消息队列,保存消息并转发给消费者,消费者监听这个队列达到接收消息的目的

Bingding:Exchange 和 Queue 之间的虚拟连接,可以包含多个 Routing key

消息流程

生产者把消息投递到 RabbitMQ server,在投递时需要指明是哪个 Exchange 和 Routing key,因为 Queue 和 Exchange 通过 Routing key 来建立规则,所以消息一经生产就能投递到具体的队列中,客户端通过监听具体的队列从而获得这个队列的消息。(消息其实是先到 Server 再到 Virtual host 再到 Exchange 再到 Queue)

原文地址:https://www.cnblogs.com/huanggy/p/9665662.html