RabbitMq exchange四种方式

    

    当你把消息发送到代理服务器时,消息将拥有一个路由键(即便是空的),RabbitMQ也会将其和绑定使用的路由键进行匹配。如果相匹配的话,那么消息将会投递到该队列。如果路由的消息不匹配任何绑定模式的话,消息将进入“黑洞”。一共有四种交换器类型:direct(默认),fanout, topic 和headers。

一、direct
    Direct Exchange :一对一完全匹配,需要将一个队列绑定到交换机上,要求该消息与一个特定的路由键完全匹配。



二、fanout
    Fanout Exchange :一对多完全匹配。你只需要简单的将队列绑定到交换机上。一个发送到交换机的消息都会被转发到与该交换机绑定的所有队列上。很像子网广播,每台子网内的主机都获得了一份复制的消息。Fanout交换机转发消息是最快的。




三、topic
    Topic Exchange :多对多正则匹配。此时队列需要绑定要一个模式上。符号“#”匹配一个或多个词,符号“*”匹配不多不少一个词。因此“audit.#”能够匹配到“audit.irs.corporate”,但是“audit.*” 只会匹配到“audit.irs”



四、headers
    headers Exchange :headers交换器允许你匹配AMQP消息的header而非路由键。除此之外,headers交换器和direct交换器完全一致,但性能会差很多。因此它并不太实用,而且几乎再也用不到了。

猜你喜欢

转载自ncs123.iteye.com/blog/2393995