Rabbitmq的基本概念

Rabbitmq的基本概念_消息路由


Rabbitmq的基本概念_交换机_02


RabbitMq的运行机制:AMQP中的消息路由过程增加了Exchange 和 Binding 的角色,生产者把消息发布到Exchange上,消息最终到达队列并被消费者接收,而Binding决定交换器的消息应该发送到哪个队列

Exchange类型
  Exchange分发消息时根据类型不同分发策略也是有区别的,目前主要有四种类型:direct(直接),fanout(扇出),topic(主题),headers

Direct Exchange:直接交换机,将消息直接交给一个指定的队列,路由键按照绑定关系精确匹配。它是完全匹配、单播模式

Fanout Exchange:每个发到fanout类型交换器的消息都会被分到所有绑定的队列上,它不会处理路由键,只会简单的将队列绑定到交换器上,每个发送到交换器的消息都会被转发到该交换器绑定的队列,广播模式

Topic Exchange:通过模式匹配分配消息的路由键属性,将路由键和某个模式进行匹配,此时队列需要绑定到一个模式上,它将路由键和绑定键的字符串分割成单词,这些单词之间使用点隔开,并且支持通配符”#”和”“,# 匹配0个或多个单词, 匹配一个单词

Headers Exchange:匹配的是AMQP的header而不是路由键,它与Direct Exchange完全一直,但是性能很差,现在几乎不用

接下来就开始简单的测试RabbitMq:

  1. 创建一个交换机
  2.  2. 创建一个队列

     3. 将交换机和队列进行绑定,点击自己的交换器进入到交换器详情界面

    4、绑定完成后就可以发送消息了,在交换器详情页,选择发送消息,注意路由键根据交换器的模式进行匹配

    5、绑定完成后就可以发送消息了,在交换器详情页,选择发送消息,注意路由键根据交换器的模式进行匹配