跳到主要内容

简述RabbitMQ的Exchange有几种模式 ?

参考答案:

RabbitMQ的Exchange主要有四种模式:

  1. fanout(扇形):在这种模式下,Exchange会把接收到的消息全部发送给绑定在自己身上的队列。因为广播不需要“思考”,所以扇形交换机处理消息的速度也是所有的交换机类型里面最快的。
  2. direct(直接):这是一种带路由功能的交换机。一个队列会和一个交换机绑定,除此之外再绑定一个routing_key。当消息被发送的时候,需要指定一个binding_key,这个消息被送达交换机的时候,就会被这个交换机送到指定的队列里面去。同样的一个binding_key也是支持应用到多个队列中的。
  3. topic(主题):这是一种支持正则匹配的交换机。发送到topic exchange上的消息需要携带指定规则的routing_key,主题交换机会根据这个规则将数据发送到对应的(多个)队列上。
  4. headers(头部):这是一种忽略routing_key的路由方式。

这四种模式提供了不同的消息路由机制,可以根据实际需求选择合适的模式。