简介
MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法。应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接来链接它们。消息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如远程过程调用的技术。排队指的是应用程序通过 队列来通信。队列的使用除去了接收和发送应用程序同时执行的要求。
概念介绍
RabbitMQ 是目前流行的开源消息队列系统,用Erlang语言开发。RabbitMQ 是AMQP(高级消息队列)的标准实现。下面是它的几个关键概念:
Broker****:简单来说就是消息队列服务器实体。
Exchange****:消息交换机,它指定消息按什么规则,路由到哪个队列。
Queue****:消息队列载体,每个消息都会被投入到一个或多个队列。
Binding****:绑定,它的作用就是把exchange和queue按照路由规则绑定起来。
Routing Key****:路由关键字,exchange根据这个关键字进行消息投递。
vhost****:虚拟主机,一个broker里可以开设多个vhost,用作不同用户的权限分离。
producer****:消息生产者,就是投递消息的程序。
consumer****:消息消费者,就是接受消息的程序。
channel****:消息通道,在客户端的每个连接里,可建立多个channel,每个channel代表一个会话任务。
消息队列的使用过程:
1.客户端连接消息队列服务器,打开一个Channel。
2.客户端声明一个EXchange,并设置相关属性。
<
版权归原作者 awonw 所有, 如有侵权,请联系我们删除。