20200220—— 消息队列RabbitMQ

在这里插入图片描述
在这里插入图片描述
RabbitMQ

MQ全称为Message Queue,即消息队列, RabbitMQ是由erlang语言开发,基于AMQP(Advanced Message Queue 高级消息队列协议)协议实现的消息队列,它是一种应用程序之间的通信方法,消息队列在分布式系统开 发中应用非常广泛。

RabbitMQ官方地址RabbitMQ官方地址

开发中消息队列通常有如下应用场景:

1、任务异步处理。 将不需要同步处理的并且耗时长的操作由消息队列通知消息接收方进行异步处理。提高了应用程序的响应时间。
2、应用程序解耦合 MQ相当于一个中介,生产方通过MQ与消费方交互,它将应用程序进行解耦合。

市场上还有哪些消息队列?

ActiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaMQ,RocketMQ、Redis。

为什么使用RabbitMQ呢?

1、使得简单,功能强大。
2、基于AMQP协议。
3、社区活跃,文档完善。
4、高并发性能好,这主要得益于Erlang语言。
5、Spring Boot默认已集成RabbitMQ

AMQP
AMQP是一套公开的消息队列协议,最早在2003年被提出,它旨在从协议层定义消息通信数据的标准格式,为的就是解决MQ市场上协议不统一的问题。RabbitMQ就是遵循AMQP标准协议开发的MQ服务。

JMS
JMS是java提供的一套消息服务API标准,其目的是为所有的java应用程序提供统一的消息通信的标准,类似java的jdbc,只要遵循jms标准的应用程序之间都可以进行消息通信。它和AMQP有什么不同,jms是java语言专属的消息服务标准,它是在api层定义标准,并且只能用于java应用;而AMQP是在协议层定义的标准,是跨语言的。

快速入门 RabbitMQ
在这里插入图片描述
在这里插入图片描述

消息发布接收流程:

-----发送消息-----1、生产者和Broker建立TCP连接。2、生产者和Broker建立通道。3、生产者通过通道消息发送给Broker,由Exchange将消息进行转发。4、Exchange将消息转发到指定的Queue(队列)
----接收消息-----1、消费者和Broker建立TCP连接2、消费者和Broker建立通道3、消费者监听指定的Queue(队列)4、当有消息到达Queue时Broker默认将消息推送给消费者。5、消费者接收到消息。

安装流程

安装erl语言
安装rabbitMQ
安装能在浏览器显示的插件

在这里插入图片描述

发布了735 篇原创文章 · 获赞 42 · 访问量 7万+

猜你喜欢

转载自blog.csdn.net/qq_36344771/article/details/104412567