Exchange(交换机)详解

AMQP(Advanced Message Queuing Protocol)提供统一消息服务的应用层标准高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。

Exchange是AMQP和RabbitMQ的核心组件。

职责:根据绑定关系和路由键给消息提供路由,把消息转发到相应的队列上。

Exchange就是为消息提供和队列提供绑定关系,最终路由到正确的队列。

Exchange分4种:

  1. Direct(直接发送):Routing Key和Binding Key完全匹配。

    Direct模式

  2. Topic(可以根据规则发送到目标队列,Binding Key中,#可以匹配任意多个词,*可以匹配1个词),看下面的例子,比如:

    1. 粤菜.清淡->烧鹅
    2. 川菜.微.辣, 川菜.变态.辣 ->麻婆豆腐
    3. 鲁菜.重油.重盐 -> 葱爆海参
  3. topic模式

  4. Fanout(扇形发送): Routing Key不再重要,当一个消息发送过来,会给每个队列都发送,类似广播的方式。

    扇形绑定

  5. Headers-很少用

RabbitMQ该如何学习

计算机学科是一个要求动手能力很强的学科,通过实战,用实际项目,把知识牢牢掌握住。

《Go语言+RabbitMQ实战课》-课程目录海报 《Go+RabbitMQ课程》-优惠券
添加微信 公众号更多内容
wechat gzh