原文 http://www.rabbitmq.com/tutorials/tutorial-one-python.html
Introduction
RabbitMQ 是一个消息的代理人。他的核心思想十分的简单:接受和转发消息。你可以把他当作一个邮局:当你把信放入邮箱的时候,你非常确定最后邮递员叔叔会帮你把信送到接收者那里。用这个比喻,RabbitMQ就类似邮箱,邮局以及邮递员。
RabbitMQ和普通的邮局最大的区别是,RabbitMQ处理的不是纸,而是接收、存数和转发电子数据--信息。
RabbitMQ,以及其他的消息中间件,都是用的一些术语:
1. Producing 意味着 Sending. 一个负责发送信息的程序,就是一个Producer。我们会用一个P来标示。如下:
2. 一个queue就是一个邮箱。queue是在RabbitMQ中的。尽管信息是在RabbitMQ和Applications流通的,这些信息也会存储在queue中。一个queue能存储的信息量时无限的。一个queue基本上就是一个无限的buffer。很多的Producer可以往一个queue中发信息,多个Consumer可以从一个queue中获取信息。queue就类似下图:
3. 消费就类似一个接收的过程。一个消费者是一个等待接收信息的程序。consumer使用下图表示:
这里需要提的是,Producer,Consumer和broker不用在同一台机器上。实际上,在大多数的application中,他们都是没有在一台机器上的。