RabbitMQ研究(一)

版权声明:111 https://blog.csdn.net/weixin_43763128/article/details/84330330

RabbitMQ是基于AMQP(Message Queue高级消息队列协议),是由erlang语言开发
使用rabbitMQ的优点
1、使得简单,功能强大。
2、基于AMQP协议。
3、社区活跃,文档完善。
4、高并发性能好,这主要得益于Erlang语言。
5、Spring Boot默认已集成RabbitMQ

JMS是什么?
java message service java消息服务,是一个java平台中关于面向消息中间件的api,jms相当于java api,而amqp是wire-protocol,amqp支持跨语言跨平台。

RabbitMQ工作原理
在这里插入图片描述
Broker :消息队列服务进程,此进程包括两个部分:Exchange和Queue。
Exchange :消息队列交换机,按一定的规则将消息路由转发到某个队列,对消息进行过虑。
Queue :消息队列,存储消息的队列,消息到达队列并转发给指定的消费方。
Producer :消息生产者,即生产方客户端,生产方客户端将消息发送到MQ。
Consumer :消息消费者,即消费方客户端,接收MQ转发的消息。

-----发送消息-----
1、生产者和Broker建立TCP连接。
2、生产者和Broker建立通道。
3、生产者通过通道消息发送给Broker,由Exchange将消息进行转发。
4、Exchange将消息转发到指定的Queue(队列)

----接收消息-----
1、消费者和Broker建立TCP连接
2、消费者和Broker建立通道
3、消费者监听指定的Queue(队列)
4、当有消息到达Queue时Broker默认将消息推送给消费者。
5、消费者接收到消息。
通道可以理解为一个大连接中的小连接(channel)

猜你喜欢

转载自blog.csdn.net/weixin_43763128/article/details/84330330
今日推荐