Exchange编程
Bindingsspa
Queues图片
JMS虽然有抽象出Destination,可是具体编程的时候,须要使用者指定是Queue仍是Topic。路由
AMQP,经过Exchange屏蔽了queue和topic的细节。it
简单的说就是借助Exchange经过routingKey和binding两个的组合使用实现message与queue的路由。io
仅仅使用routingKey,不须要exchange与queue绑定,就是direct模式class
不是用routingKey,使用exchange与queue的绑定,就是Fanout模式gc
既使用routingKey,又使用Exchange与Queue的绑定,就是Topic模式,较为复杂,能够基于bindingKey的规则匹配过滤/指定要接收发送到绑定的exchange上的不一样routingKey的消息。queue
具体是经过指定Exchange的方式,来实现点对点仍是订阅发布模式:im
就是主题模式,须要routingKey,也须要绑定Queue,根据绑定的routingkey来发送
不须要routingKey,须要Exchange与Queue绑定
须要routingKey,不须要Exchange与Queue绑定,直接根据routingKey发送