RabbitMQ

RabbitMQ的设计完全依据高阶消息队列协议( Advanced Message Queuing Protocol,AMQP)

在AMQP中,实时数据处理的流程抽象为以下三个成分

消费生产者(Producer)消息中介(Message Broker)数据消费者(Consumer)

RabbitMQ主要构成部分:

消息(Message)RabbitMQ队列中存在的数据的基本单元。

消息有以下几个部分组成

消息负载(可以是任何二进制数据,如JSON、Thrift等结构化数据包)。

路由名 消息到达RabbitMQ之后应该被送到哪一条队列?通过路由名确定。

投递保证  设置有投递保证的消息会存储到RabbitMQ服务器的硬盘中。

消息队列 RabbitMQ中进行消息存储、读取的基本原件

消息连接

RabbitMQ往往是以一个分布式消息集群的形式存在于一个系统中的,其他使用者需要通过网络连接的方式与之对接。

消息交换中心

一条消息到达RabbitMQ服务器之后,是如何分配到各个消息队列。这个重要的任务由消息交换中心完成。

常用交换中心模式

直连式


扇形结构


话题结构


报头结构

消息传到设计模式

任务队列

发布、监听

远程命令

利用docker快速部署rabbitmq

docker run -d -p 5672:5672 -p 15672:15672 -e "RABBITMQ_DEFAULT_USER=test" -e "RABBITMQ_DEFAULT_PASS=test" rabbitmq:3-management

分别开放了服务端口5672和管理页面端口15672

你可能感兴趣的:(RabbitMQ)