| 
 Producer  | 
 实际发布消息的角色,Producer发送消息的时候,首先是发送到Exchange,然后RabbitMQ根据Exchange的类型和逻辑来判断应该发送到那个Queue中,所以Queue必须bind到特定的Exchange上才能获取消息,绑定的时候可以提供一个routing_key来判断选择的什么消息,publisher在发出消息的时候就可以制定不同的routing_key来选择如何分布消息  | 
|
| 
 Queue  | 
 是实际消息存放的角色,消息从Queue一端放入,另一端由Consumer取出,如果多个Consumer,每个Consumer各自取出不同的消息进行处理(许多producer可以发送消息到一个queue-许多consumer可以尝试从一个queue中接收数据)  | 
|
| 
 Consumer  | 
 是等待接收消息的角色  | 
|
| 
 注意  | 
 在大多数应用场景中,生产者、消费者以及RabbitMQ服务是不会同时运行在一台机器上的。  | 
|
| 
 每个概念的流程  | 
 Producer - exchange - binding - queue - consumer  | 
原文:http://www.cnblogs.com/rosydawn/p/4503979.html