AMQP:Advanced Message Queuing Protocol 高级消息队列协议
工作原理如上图:
AMQP的两个主要组件:Exchange和Queue,绿色的X是Exchange,红色的是Queue,这两者都在Server端,又被称作Broker,这部分是由RabbitMQ实现的,而蓝色端则是客户端,通常有Producer和Consumer两种类型
基础概念:
虚拟机:virtual host 通常是应用的外在边界,我们可以为不同的虚拟机分配访问权限。虚拟机可持有多个交换机、队列和绑定。
交换机:Exchange 从连接通道接收消息,并按照特定的路由规则发送给队列。
队列:queue 消息的最终存储容器,直到消费客户端将其取走。
绑定:也就是所谓的路由规则,告诉交换机将何种类型的消息发送到队列中。
通常的操作流程:
1.消费者:创建信息通道
2.消费者:定义消息队列
3.消费者:定义特定类型的交换机
4.消费者:设定绑定规则(包括交换机名称,队列名称以及路由键)。
5.消费者:等待消息。
6.生产者:创建消息。
7.生产者:将消息投递给信息通道(注明交换机名称和路由键)。
8.交换机:获取消息,依据交换机类型决定是否匹配路由规则(如需匹配,则对比消息路由键和绑定路由键)。
9.消费者:获取并处理消息,发送反馈。
10.结束:关闭通道和连接。