RabbitMQ基础概念
AMQP
即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件。消息中间件主要用于组件之间的解耦和通讯。
AMQP的主要特征是面向消息,队列,路由(包括点对点和发布/订阅),可靠性,安全。
RabbitMQ是一个开源的AMQP实现,服务器端使用Erlang语言编写。用于在分布式系统中存储赚发消息,具有很高的易用性和可使用性。
ConnectionFactory
ConnectionFactory为Connection的制造工厂
Connection
Connection是RabbitMQ的socket连接,他封装了socket协议相关部分逻辑
Channel(信道)
信道是建立在“真实的”TCP连接上的虚拟连接,在一条TCP连接上创建多少条信道是没有限制的,把他想象成光纤就可以了。它是我们与RabbitMQ打交道的最重要的一个接口,我们大部分的业务操作是在Channel这个接口中完成的,包括定义Queue,定义Exchange,绑定Queue和Exchange,发布消息等。
Queue
Queue是RabbitMQ的内部对象,用于存储消息。
RabbitMQ的消息只能存储在Queue中。生产者可以从Queue中获取消息并消费,消费者可以是一个或者多个。