RabbitMQ
MQ - 消息队列(essage Queue)
RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现
- 首先是两个端点,消息生产者和消息消费者,而消息队列的角色是充当了两者的中间件。
- Routing Key(路由键),消息生产者根据Routing Key找到Exchange(交换器),Exchange根据Binding key找到相对于的队列,并且Exchange的类型决定了消息放入哪些队列。
- Exchange类型
- fanout: 把所有发送到该Exchange的消息路由到所有与它绑定的Queue
- direct :binding key与routing key完全匹配的Queue中
- topic :Routing Key必须与Binding Key模糊匹配
- headers :根据发送的消息内容中的headers属性进行匹配
RabbitMQ
- 下载安装Erlang http://www.erlang.org/downloads
- 下载安装RabbitMQ http://www.rabbitmq.com/download.html
- 打开RabbitMQ command propmt命令行,执行rabbitmq-plugins enable rabbitmq_management命令,就可以通过浏览器来进行管理了。
- 通过https://localhost:15672进行访问
- 默认用户名和密码都是guest
note
web管理RabbitMQ实例
新增三种类型Exchange
新增Queue
Exchange绑定Queue
- direct类型交换器绑定
发送消息
就在atguigu队列中得到了消息
direct Exchange :binding key与routing key完全匹配的Queue中